<!DOCTYPE html>

<html>
	
	<head>
		<meta http-equiv="Content-type" content="text/html; charset=UTF-8" />
		<% @severities ||= Severity.all %>

		<script type="text/javascript">
			<% @severities.each do |sev| %>
				var sev<%= sev.sig_id %>_bg_color = '<%= sev.bg_color %>';
			<% end %>
		</script>


    <script type="text/javascript">
/*!
 * jQuery JavaScript Library v1.6.2
 * http://jquery.com/
 *
 * Copyright 2011, John Resig
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * Includes Sizzle.js
 * http://sizzlejs.com/
 * Copyright 2011, The Dojo Foundation
 * Released under the MIT, BSD, and GPL Licenses.
 *
 * Date: Thu Jun 30 14:16:56 2011 -0400
 */
(function(a,b){function cv(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cs(a){if(!cg[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){ch||(ch=c.createElement("iframe"),ch.frameBorder=ch.width=ch.height=0),b.appendChild(ch);if(!ci||!ch.createElement)ci=(ch.contentWindow||ch.contentDocument).document,ci.write((c.compatMode==="CSS1Compat"?"<!doctype html>":"")+"<html><body>"),ci.close();d=ci.createElement(a),ci.body.appendChild(d),e=f.css(d,"display"),b.removeChild(ch)}cg[a]=e}return cg[a]}function cr(a,b){var c={};f.each(cm.concat.apply([],cm.slice(0,b)),function(){c[this]=a});return c}function cq(){cn=b}function cp(){setTimeout(cq,0);return cn=f.now()}function cf(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ce(){try{return new a.XMLHttpRequest}catch(b){}}function b$(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g<i;g++){if(g===1)for(h in a.converters)typeof h=="string"&&(e[h.toLowerCase()]=a.converters[h]);l=k,k=d[g];if(k==="*")k=l;else if(l!=="*"&&l!==k){m=l+" "+k,n=e[m]||e["* "+k];if(!n){p=b;for(o in e){j=o.split(" ");if(j[0]===l||j[0]==="*"){p=e[j[1]+" "+k];if(p){o=e[o],o===!0?n=p:p===!0&&(n=o);break}}}}!n&&!p&&f.error("No conversion from "+m.replace(" "," to ")),n!==!0&&(c=n?n(c):p(o(c)))}}return c}function bZ(a,c,d){var e=a.contents,f=a.dataTypes,g=a.responseFields,h,i,j,k;for(i in g)i in d&&(c[g[i]]=d[i]);while(f[0]==="*")f.shift(),h===b&&(h=a.mimeType||c.getResponseHeader("content-type"));if(h)for(i in e)if(e[i]&&e[i].test(h)){f.unshift(i);break}if(f[0]in d)j=f[0];else{for(i in d){if(!f[0]||a.converters[i+" "+f[0]]){j=i;break}k||(k=i)}j=j||k}if(j){j!==f[0]&&f.unshift(j);return d[j]}}function bY(a,b,c,d){if(f.isArray(b))f.each(b,function(b,e){c||bC.test(a)?d(a,e):bY(a+"["+(typeof e=="object"||f.isArray(e)?b:"")+"]",e,c,d)});else if(!c&&b!=null&&typeof b=="object")for(var e in b)bY(a+"["+e+"]",b[e],c,d);else d(a,b)}function bX(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h=a[f],i=0,j=h?h.length:0,k=a===bR,l;for(;i<j&&(k||!l);i++)l=h[i](c,d,e),typeof l=="string"&&(!k||g[l]?l=b:(c.dataTypes.unshift(l),l=bX(a,c,d,e,l,g)));(k||!l)&&!g["*"]&&(l=bX(a,c,d,e,"*",g));return l}function bW(a){return function(b,c){typeof b!="string"&&(c=b,b="*");if(f.isFunction(c)){var d=b.toLowerCase().split(bN),e=0,g=d.length,h,i,j;for(;e<g;e++)h=d[e],j=/^\+/.test(h),j&&(h=h.substr(1)||"*"),i=a[h]=a[h]||[],i[j?"unshift":"push"](c)}}}function bA(a,b,c){var d=b==="width"?a.offsetWidth:a.offsetHeight,e=b==="width"?bv:bw;if(d>0){c!=="border"&&f.each(e,function(){c||(d-=parseFloat(f.css(a,"padding"+this))||0),c==="margin"?d+=parseFloat(f.css(a,c+this))||0:d-=parseFloat(f.css(a,"border"+this+"Width"))||0});return d+"px"}d=bx(a,b,b);if(d<0||d==null)d=a.style[b]||0;d=parseFloat(d)||0,c&&f.each(e,function(){d+=parseFloat(f.css(a,"padding"+this))||0,c!=="padding"&&(d+=parseFloat(f.css(a,"border"+this+"Width"))||0),c==="margin"&&(d+=parseFloat(f.css(a,c+this))||0)});return d+"px"}function bm(a,b){b.src?f.ajax({url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(be,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)}function bl(a){f.nodeName(a,"input")?bk(a):"getElementsByTagName"in a&&f.grep(a.getElementsByTagName("input"),bk)}function bk(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bj(a){return"getElementsByTagName"in a?a.getElementsByTagName("*"):"querySelectorAll"in a?a.querySelectorAll("*"):[]}function bi(a,b){var c;if(b.nodeType===1){b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase();if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(f.expando)}}function bh(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c=f.expando,d=f.data(a),e=f.data(b,d);if(d=d[c]){var g=d.events;e=e[c]=f.extend({},d);if(g){delete e.handle,e.events={};for(var h in g)for(var i=0,j=g[h].length;i<j;i++)f.event.add(b,h+(g[h][i].namespace?".":"")+g[h][i].namespace,g[h][i],g[h][i].data)}}}}function bg(a,b){return f.nodeName(a,"table")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function W(a,b,c){b=b||0;if(f.isFunction(b))return f.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return f.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=f.grep(a,function(a){return a.nodeType===1});if(R.test(b))return f.filter(b,d,!c);b=f.filter(b,d)}return f.grep(a,function(a,d){return f.inArray(a,b)>=0===c})}function V(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function N(a,b){return(a&&a!=="*"?a+".":"")+b.replace(z,"`").replace(A,"&")}function M(a){var b,c,d,e,g,h,i,j,k,l,m,n,o,p=[],q=[],r=f._data(this,"events");if(!(a.liveFired===this||!r||!r.live||a.target.disabled||a.button&&a.type==="click")){a.namespace&&(n=new RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)")),a.liveFired=this;var s=r.live.slice(0);for(i=0;i<s.length;i++)g=s[i],g.origType.replace(x,"")===a.type?q.push(g.selector):s.splice(i--,1);e=f(a.target).closest(q,a.currentTarget);for(j=0,k=e.length;j<k;j++){m=e[j];for(i=0;i<s.length;i++){g=s[i];if(m.selector===g.selector&&(!n||n.test(g.namespace))&&!m.elem.disabled){h=m.elem,d=null;if(g.preType==="mouseenter"||g.preType==="mouseleave")a.type=g.preType,d=f(a.relatedTarget).closest(g.selector)[0],d&&f.contains(h,d)&&(d=h);(!d||d!==h)&&p.push({elem:h,handleObj:g,level:m.level})}}}for(j=0,k=p.length;j<k;j++){e=p[j];if(c&&e.level>c)break;a.currentTarget=e.elem,a.data=e.handleObj.data,a.handleObj=e.handleObj,o=e.handleObj.origHandler.apply(e.elem,arguments);if(o===!1||a.isPropagationStopped()){c=e.level,o===!1&&(b=!1);if(a.isImmediatePropagationStopped())break}}return b}}function K(a,c,d){var e=f.extend({},d[0]);e.type=a,e.originalEvent={},e.liveFired=b,f.event.handle.call(c,e),e.isDefaultPrevented()&&d[0].preventDefault()}function E(){return!0}function D(){return!1}function m(a,c,d){var e=c+"defer",g=c+"queue",h=c+"mark",i=f.data(a,e,b,!0);i&&(d==="queue"||!f.data(a,g,b,!0))&&(d==="mark"||!f.data(a,h,b,!0))&&setTimeout(function(){!f.data(a,g,b,!0)&&!f.data(a,h,b,!0)&&(f.removeData(a,e,!0),i.resolve())},0)}function l(a){for(var b in a)if(b!=="toJSON")return!1;return!0}function k(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(j,"$1-$2").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNaN(d)?i.test(d)?f.parseJSON(d):d:parseFloat(d)}catch(g){}f.data(a,c,d)}else d=b}return d}var c=a.document,d=a.navigator,e=a.location,f=function(){function J(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(J,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/\d/,n=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,o=/^[\],:{}\s]*$/,p=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,q=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,r=/(?:^|:|,)(?:\s*\[)+/g,s=/(webkit)[ \/]([\w.]+)/,t=/(opera)(?:.*version)?[ \/]([\w.]+)/,u=/(msie) ([\w.]+)/,v=/(mozilla)(?:.*? rv:([\w.]+))?/,w=/-([a-z])/ig,x=function(a,b){return b.toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=n.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.6.2",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.done(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j<k;j++)if((a=arguments[j])!=null)for(c in a){d=i[c],f=a[c];if(i===f)continue;l&&f&&(e.isPlainObject(f)||(g=e.isArray(f)))?(g?(g=!1,h=d&&e.isArray(d)?d:[]):h=d&&e.isPlainObject(d)?d:{},i[c]=e.extend(l,h,f)):f!==b&&(i[c]=f)}return i},e.extend({noConflict:function(b){a.$===e&&(a.$=g),b&&a.jQuery===e&&(a.jQuery=f);return e},isReady:!1,readyWait:1,holdReady:function(a){a?e.readyWait++:e.ready(!0)},ready:function(a){if(a===!0&&!--e.readyWait||a!==!0&&!e.isReady){if(!c.body)return setTimeout(e.ready,1);e.isReady=!0;if(a!==!0&&--e.readyWait>0)return;A.resolveWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").unbind("ready")}},bindReady:function(){if(!A){A=e._Deferred();if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNaN:function(a){return a==null||!m.test(a)||isNaN(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1;var c;for(c in a);return c===b||D.call(a,c)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw a},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(o.test(b.replace(p,"@").replace(q,"]").replace(r,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(b,c,d){a.DOMParser?(d=new DOMParser,c=d.parseFromString(b,"text/xml")):(c=new ActiveXObject("Microsoft.XMLDOM"),c.async="false",c.loadXML(b)),d=c.documentElement,(!d||!d.nodeName||d.nodeName==="parsererror")&&e.error("Invalid XML: "+b);return c},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g<h;)if(c.apply(a[g++],d)===!1)break}else if(i){for(f in a)if(c.call(a[f],f,a[f])===!1)break}else for(;g<h;)if(c.call(a[g],g,a[g++])===!1)break;return a},trim:G?function(a){return a==null?"":G.call(a)}:function(a){return a==null?"":(a+"").replace(k,"").replace(l,"")},makeArray:function(a,b){var c=b||[];if(a!=null){var d=e.type(a);a.length==null||d==="string"||d==="function"||d==="regexp"||e.isWindow(a)?E.call(c,a):e.merge(c,a)}return c},inArray:function(a,b){if(H)return H.call(b,a);for(var c=0,d=b.length;c<d;c++)if(b[c]===a)return c;return-1},merge:function(a,c){var d=a.length,e=0;if(typeof c.length=="number")for(var f=c.length;e<f;e++)a[d++]=c[e];else while(c[e]!==b)a[d++]=c[e++];a.length=d;return a},grep:function(a,b,c){var d=[],e;c=!!c;for(var f=0,g=a.length;f<g;f++)e=!!b(a[f],f),c!==e&&d.push(a[f]);return d},map:function(a,c,d){var f,g,h=[],i=0,j=a.length,k=a instanceof e||j!==b&&typeof j=="number"&&(j>0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i<j;i++)f=c(a[i],i,d),f!=null&&(h[h.length]=f);else for(g in a)f=c(a[g],g,d),f!=null&&(h[h.length]=f);return h.concat.apply([],h)},guid:1,proxy:function(a,c){if(typeof c=="string"){var d=a[c];c=a,a=d}if(!e.isFunction(a))return b;var f=F.call(arguments,2),g=function(){return a.apply(c,f.concat(F.call(arguments)))};g.guid=a.guid=a.guid||g.guid||e.guid++;return g},access:function(a,c,d,f,g,h){var i=a.length;if(typeof c=="object"){for(var j in c)e.access(a,j,c[j],f,g,d);return a}if(d!==b){f=!h&&f&&e.isFunction(d);for(var k=0;k<i;k++)g(a[k],c,f?d.call(a[k],k,g(a[k],c)):d,h);return a}return i?g(a[0],c):b},now:function(){return(new Date).getTime()},uaMatch:function(a){a=a.toLowerCase();var b=s.exec(a)||t.exec(a)||u.exec(a)||a.indexOf("compatible")<0&&v.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}e.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function(d,f){f&&f instanceof e&&!(f instanceof a)&&(f=a(f));return e.fn.init.call(this,d,f,b)},a.fn.init.prototype=a.fn;var b=a(c);return a},browser:{}}),e.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){I["[object "+b+"]"]=b.toLowerCase()}),z=e.uaMatch(y),z.browser&&(e.browser[z.browser]=!0,e.browser.version=z.version),e.browser.webkit&&(e.browser.safari=!0),j.test(" ")&&(k=/^[\s\xA0]+/,l=/[\s\xA0]+$/),h=e(c),c.addEventListener?B=function(){c.removeEventListener("DOMContentLoaded",B,!1),e.ready()}:c.attachEvent&&(B=function(){c.readyState==="complete"&&(c.detachEvent("onreadystatechange",B),e.ready())});return e}(),g="done fail isResolved isRejected promise then always pipe".split(" "),h=[].slice;f.extend({_Deferred:function(){var a=[],b,c,d,e={done:function(){if(!d){var c=arguments,g,h,i,j,k;b&&(k=b,b=0);for(g=0,h=c.length;g<h;g++)i=c[g],j=f.type(i),j==="array"?e.done.apply(e,i):j==="function"&&a.push(i);k&&e.resolveWith(k[0],k[1])}return this},resolveWith:function(e,f){if(!d&&!b&&!c){f=f||[],c=1;try{while(a[0])a.shift().apply(e,f)}finally{b=[e,f],c=0}}return this},resolve:function(){e.resolveWith(this,arguments);return this},isResolved:function(){return!!c||!!b},cancel:function(){d=1,a=[];return this}};return e},Deferred:function(a){var b=f._Deferred(),c=f._Deferred(),d;f.extend(b,{then:function(a,c){b.done(a).fail(c);return this},always:function(){return b.done.apply(b,arguments).fail.apply(this,arguments)},fail:c.done,rejectWith:c.resolveWith,reject:c.resolve,isRejected:c.isResolved,pipe:function(a,c){return f.Deferred(function(d){f.each({done:[a,"resolve"],fail:[c,"reject"]},function(a,c){var e=c[0],g=c[1],h;f.isFunction(e)?b[a](function(){h=e.apply(this,arguments),h&&f.isFunction(h.promise)?h.promise().then(d.resolve,d.reject):d[g](h)}):b[a](d[g])})}).promise()},promise:function(a){if(a==null){if(d)return d;d=a={}}var c=g.length;while(c--)a[g[c]]=b[g[c]];return a}}),b.done(c.cancel).fail(b.cancel),delete b.cancel,a&&a.call(b,b);return b},when:function(a){function i(a){return function(c){b[a]=arguments.length>1?h.call(arguments,0):c,--e||g.resolveWith(g,h.call(b,0))}}var b=arguments,c=0,d=b.length,e=d,g=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred();if(d>1){for(;c<d;c++)b[c]&&f.isFunction(b[c].promise)?b[c].promise().then(i(c),g.reject):--e;e||g.resolveWith(g,b)}else g!==a&&g.resolveWith(g,d?[a]:[]);return g.promise()}}),f.support=function(){var a=c.createElement("div"),b=c.documentElement,d,e,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;a.setAttribute("className","t"),a.innerHTML="   <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>",d=a.getElementsByTagName("*"),e=a.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=a.getElementsByTagName("input")[0],k={leadingWhitespace:a.firstChild.nodeType===3,tbody:!a.getElementsByTagName("tbody").length,htmlSerialize:!!a.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55$/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:a.className!=="t",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,k.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,k.optDisabled=!h.disabled;try{delete a.test}catch(v){k.deleteExpando=!1}!a.addEventListener&&a.attachEvent&&a.fireEvent&&(a.attachEvent("onclick",function(){k.noCloneEvent=!1}),a.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),k.radioValue=i.value==="t",i.setAttribute("checked","checked"),a.appendChild(i),l=c.createDocumentFragment(),l.appendChild(a.firstChild),k.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,a.innerHTML="",a.style.width=a.style.paddingLeft="1px",m=c.getElementsByTagName("body")[0],o=c.createElement(m?"div":"body"),p={visibility:"hidden",width:0,height:0,border:0,margin:0},m&&f.extend(p,{position:"absolute",left:-1e3,top:-1e3});for(t in p)o.style[t]=p[t];o.appendChild(a),n=m||b,n.insertBefore(o,n.firstChild),k.appendChecked=i.checked,k.boxModel=a.offsetWidth===2,"zoom"in a.style&&(a.style.display="inline",a.style.zoom=1,k.inlineBlockNeedsLayout=a.offsetWidth===2,a.style.display="",a.innerHTML="<div style='width:4px;'></div>",k.shrinkWrapBlocks=a.offsetWidth!==2),a.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>",q=a.getElementsByTagName("td"),u=q[0].offsetHeight===0,q[0].style.display="",q[1].style.display="none",k.reliableHiddenOffsets=u&&q[0].offsetHeight===0,a.innerHTML="",c.defaultView&&c.defaultView.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",a.appendChild(j),k.reliableMarginRight=(parseInt((c.defaultView.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0),o.innerHTML="",n.removeChild(o);if(a.attachEvent)for(t in{submit:1,change:1,focusin:1})s="on"+t,u=s in a,u||(a.setAttribute(s,"return;"),u=typeof a[s]=="function"),k[t+"Bubbles"]=u;o=l=g=h=m=j=a=i=null;return k}(),f.boxModel=f.support.boxModel;var i=/^(?:\{.*\}|\[.*\])$/,j=/([a-z])([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!l(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g=f.expando,h=typeof c=="string",i,j=a.nodeType,k=j?f.cache:a,l=j?a[f.expando]:a[f.expando]&&f.expando;if((!l||e&&l&&!k[l][g])&&h&&d===b)return;l||(j?a[f.expando]=l=++f.uuid:l=f.expando),k[l]||(k[l]={},j||(k[l].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?k[l][g]=f.extend(k[l][g],c):k[l]=f.extend(k[l],c);i=k[l],e&&(i[g]||(i[g]={}),i=i[g]),d!==b&&(i[f.camelCase(c)]=d);if(c==="events"&&!i[c])return i[g]&&i[g].events;return h?i[f.camelCase(c)]||i[c]:i}},removeData:function(b,c,d){if(!!f.acceptData(b)){var e=f.expando,g=b.nodeType,h=g?f.cache:b,i=g?b[f.expando]:f.expando;if(!h[i])return;if(c){var j=d?h[i][e]:h[i];if(j){delete j[c];if(!l(j))return}}if(d){delete h[i][e];if(!l(h[i]))return}var k=h[i][e];f.support.deleteExpando||h!=a?delete h[i]:h[i]=null,k?(h[i]={},g||(h[i].toJSON=f.noop),h[i][e]=k):g&&(f.support.deleteExpando?delete b[f.expando]:b.removeAttribute?b.removeAttribute(f.expando):b[f.expando]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d=null;if(typeof a=="undefined"){if(this.length){d=f.data(this[0]);if(this[0].nodeType===1){var e=this[0].attributes,g;for(var h=0,i=e.length;h<i;h++)g=e[h].name,g.indexOf("data-")===0&&(g=f.camelCase(g.substring(5)),k(this[0],g,d[g]))}}return d}if(typeof a=="object")return this.each(function(){f.data(this,a)});var j=a.split(".");j[1]=j[1]?"."+j[1]:"";if(c===b){d=this.triggerHandler("getData"+j[1]+"!",[j[0]]),d===b&&this.length&&(d=f.data(this[0],a),d=k(this[0],a,d));return d===b&&j[1]?this.data(j[0]):d}return this.each(function(){var b=f(this),d=[j[0],c];b.triggerHandler("setData"+j[1]+"!",d),f.data(this,a,c),b.triggerHandler("changeData"+j[1]+"!",d)})},removeData:function(a){return this.each(function(){f.removeData(this,a)})}}),f.extend({_mark:function(a,c){a&&(c=(c||"fx")+"mark",f.data(a,c,(f.data(a,c,b,!0)||0)+1,!0))},_unmark:function(a,c,d){a!==!0&&(d=c,c=a,a=!1);if(c){d=d||"fx";var e=d+"mark",g=a?0:(f.data(c,e,b,!0)||1)-1;g?f.data(c,e,g,!0):(f.removeData(c,e,!0),m(c,d,"mark"))}},queue:function(a,c,d){if(a){c=(c||"fx")+"queue";var e=f.data(a,c,b,!0);d&&(!e||f.isArray(d)?e=f.data(a,c,f.makeArray(d),!0):e.push(d));return e||[]}},dequeue:function(a,b){b=b||"fx";var c=f.queue(a,b),d=c.shift(),e;d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),d.call(a,function(){f.dequeue(a,b)})),c.length||(f.removeData(a,b+"queue",!0),m(a,b,"queue"))}}),f.fn.extend({queue:function(a,c){typeof a!="string"&&(c=a,a="fx");if(c===b)return f.queue(this[0],a);return this.each(function(){var b=f.queue(this,a,c);a==="fx"&&b[0]!=="inprogress"&&f.dequeue(this,a)})},dequeue:function(a){return this.each(function(){f.dequeue(this,a)})},delay:function(a,b){a=f.fx?f.fx.speeds[a]||a:a,b=b||"fx";return this.queue(b,function(){var c=this;setTimeout(function(){f.dequeue(c,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){function m(){--h||d.resolveWith(e,[e])}typeof a!="string"&&(c=a,a=b),a=a||"fx";var d=f.Deferred(),e=this,g=e.length,h=1,i=a+"defer",j=a+"queue",k=a+"mark",l;while(g--)if(l=f.data(e[g],i,b,!0)||(f.data(e[g],j,b,!0)||f.data(e[g],k,b,!0))&&f.data(e[g],i,f._Deferred(),!0))h++,l.done(m);m();return d.promise()}});var n=/[\n\t\r]/g,o=/\s+/,p=/\r/g,q=/^(?:button|input)$/i,r=/^(?:button|input|object|select|textarea)$/i,s=/^a(?:rea)?$/i,t=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,u=/\:|^on/,v,w;f.fn.extend({attr:function(a,b){return f.access(this,a,b,!0,f.attr)},removeAttr:function(a){return this.each(function(){f.removeAttr(this,a)})},prop:function(a,b){return f.access(this,a,b,!0,f.prop)},removeProp:function(a){a=f.propFix[a]||a;return this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,g,h,i;if(f.isFunction(a))return this.each(function(b){f(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(o);for(c=0,d=this.length;c<d;c++){e=this[c];if(e.nodeType===1)if(!e.className&&b.length===1)e.className=a;else{g=" "+e.className+" ";for(h=0,i=b.length;h<i;h++)~g.indexOf(" "+b[h]+" ")||(g+=b[h]+" ");e.className=f.trim(g)}}}return this},removeClass:function(a){var c,d,e,g,h,i,j;if(f.isFunction(a))return this.each(function(b){f(this).removeClass(a.call(this,b,this.className))});if(a&&typeof a=="string"||a===b){c=(a||"").split(o);for(d=0,e=this.length;d<e;d++){g=this[d];if(g.nodeType===1&&g.className)if(a){h=(" "+g.className+" ").replace(n," ");for(i=0,j=c.length;i<j;i++)h=h.replace(" "+c[i]+" "," ");g.className=f.trim(h)}else g.className=""}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";if(f.isFunction(a))return this.each(function(c){f(this).toggleClass(a.call(this,c,this.className,b),b)});return this.each(function(){if(c==="string"){var e,g=0,h=f(this),i=b,j=a.split(o);while(e=j[g++])i=d?i:!h.hasClass(e),h[i?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&f._data(this,"__className__",this.className),this.className=this.className||a===!1?"":f._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ";for(var c=0,d=this.length;c<d;c++)if((" "+this[c].className+" ").replace(n," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e=this[0];if(!arguments.length){if(e){c=f.valHooks[e.nodeName.toLowerCase()]||f.valHooks[e.type];if(c&&"get"in c&&(d=c.get(e,"value"))!==b)return d;d=e.value;return typeof d=="string"?d.replace(p,""):d==null?"":d}return b}var g=f.isFunction(a);return this.each(function(d){var e=f(this),h;if(this.nodeType===1){g?h=a.call(this,d,e.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c=a.selectedIndex,d=[],e=a.options,g=a.type==="select-one";if(c<0)return null;for(var h=g?c:0,i=g?c+1:e.length;h<i;h++){var j=e[h];if(j.selected&&(f.support.optDisabled?!j.disabled:j.getAttribute("disabled")===null)&&(!j.parentNode.disabled||!f.nodeName(j.parentNode,"optgroup"))){b=f(j).val();if(g)return b;d.push(b)}}if(g&&!d.length&&e.length)return f(e[c]).val();return d},set:function(a,b){var c=f.makeArray(b);f(a).find("option").each(function(){this.selected=f.inArray(f(this).val(),c)>=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attrFix:{tabindex:"tabIndex"},attr:function(a,c,d,e){var g=a.nodeType;if(!a||g===3||g===8||g===2)return b;if(e&&c in f.attrFn)return f(a)[c](d);if(!("getAttribute"in a))return f.prop(a,c,d);var h,i,j=g!==1||!f.isXMLDoc(a);j&&(c=f.attrFix[c]||c,i=f.attrHooks[c],i||(t.test(c)?i=w:v&&c!=="className"&&(f.nodeName(a,"form")||u.test(c))&&(i=v)));if(d!==b){if(d===null){f.removeAttr(a,c);return b}if(i&&"set"in i&&j&&(h=i.set(a,d,c))!==b)return h;a.setAttribute(c,""+d);return d}if(i&&"get"in i&&j&&(h=i.get(a,c))!==null)return h;h=a.getAttribute(c);return h===null?b:h},removeAttr:function(a,b){var c;a.nodeType===1&&(b=f.attrFix[b]||b,f.support.getSetAttribute?a.removeAttribute(b):(f.attr(a,b,""),a.removeAttributeNode(a.getAttributeNode(b))),t.test(b)&&(c=f.propFix[b]||b)in a&&(a[c]=!1))},attrHooks:{type:{set:function(a,b){if(q.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},tabIndex:{get:function(a){var c=a.getAttributeNode("tabIndex");return c&&c.specified?parseInt(c.value,10):r.test(a.nodeName)||s.test(a.nodeName)&&a.href?0:b}},value:{get:function(a,b){if(v&&f.nodeName(a,"button"))return v.get(a,b);return b in a?a.value:null},set:function(a,b,c){if(v&&f.nodeName(a,"button"))return v.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e=a.nodeType;if(!a||e===3||e===8||e===2)return b;var g,h,i=e!==1||!f.isXMLDoc(a);i&&(c=f.propFix[c]||c,h=f.propHooks[c]);return d!==b?h&&"set"in h&&(g=h.set(a,d,c))!==b?g:a[c]=d:h&&"get"in h&&(g=h.get(a,c))!==b?g:a[c]},propHooks:{}}),w={get:function(a,c){return f.prop(a,c)?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase()));return c}},f.support.getSetAttribute||(f.attrFix=f.propFix,v=f.attrHooks.name=f.attrHooks.title=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&d.nodeValue!==""?d.nodeValue:b},set:function(a,b,c){var d=a.getAttributeNode(c);if(d){d.nodeValue=b;return b}}},f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})})),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex)}})),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var x=/\.(.*)$/,y=/^(?:textarea|input|select)$/i,z=/\./g,A=/ /g,B=/[^\w\s.|`]/g,C=function(a){return a.replace(B,"\\$&")};f.event={add:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){if(d===!1)d=D;else if(!d)return;var g,h;d.handler&&(g=d,d=g.handler),d.guid||(d.guid=f.guid++);var i=f._data(a);if(!i)return;var j=i.events,k=i.handle;j||(i.events=j={}),k||(i.handle=k=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.handle.apply(k.elem,arguments):b}),k.elem=a,c=c.split(" ");var l,m=0,n;while(l=c[m++]){h=g?f.extend({},g):{handler:d,data:e},l.indexOf(".")>-1?(n=l.split("."),l=n.shift(),h.namespace=n.slice(0).sort().join(".")):(n=[],h.namespace=""),h.type=l,h.guid||(h.guid=d.guid);var o=j[l],p=f.event.special[l]||{};if(!o){o=j[l]=[];if(!p.setup||p.setup.call(a,e,n,k)===!1)a.addEventListener?a.addEventListener(l,k,!1):a.attachEvent&&a.attachEvent("on"+l,k)}p.add&&(p.add.call(a,h),h.handler.guid||(h.handler.guid=d.guid)),o.push(h),f.event.global[l]=!0}a=null}},global:{},remove:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){d===!1&&(d=D);var g,h,i,j,k=0,l,m,n,o,p,q,r,s=f.hasData(a)&&f._data(a),t=s&&s.events;if(!s||!t)return;c&&c.type&&(d=c.handler,c=c.type);if(!c||typeof c=="string"&&c.charAt(0)==="."){c=c||"";for(h in t)f.event.remove(a,h+c);return}c=c.split(" ");while(h=c[k++]){r=h,q=null,l=h.indexOf(".")<0,m=[],l||(m=h.split("."),h=m.shift(),n=new RegExp("(^|\\.)"+f.map(m.slice(0).sort(),C).join("\\.(?:.*\\.)?")+"(\\.|$)")),p=t[h];if(!p)continue;if(!d){for(j=0;j<p.length;j++){q=p[j];if(l||n.test(q.namespace))f.event.remove(a,r,q.handler,j),p.splice(j--,1)}continue}o=f.event.special[h]||{};for(j=e||0;j<p.length;j++){q=p[j];if(d.guid===q.guid){if(l||n.test(q.namespace))e==null&&p.splice(j--,1),o.remove&&o.remove.call(a,q);if(e!=null)break}}if(p.length===0||e!=null&&p.length===1)(!o.teardown||o.teardown.call(a,m)===!1)&&f.removeEvent(a,h,s.handle),g=null,delete t[h]}if(f.isEmptyObject(t)){var u=s.handle;u&&(u.elem=null),delete s.events,delete s.handle,f.isEmptyObject(s)&&f.removeData(a,b,!0)}}},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,e,g){var h=c.type||c,i=[],j;h.indexOf("!")>=0&&(h=h.slice(0,-1),j=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.
shift(),i.sort());if(!!e&&!f.event.customEvent[h]||!!f.event.global[h]){c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.exclusive=j,c.namespace=i.join("."),c.namespace_re=new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)");if(g||!e)c.preventDefault(),c.stopPropagation();if(!e){f.each(f.cache,function(){var a=f.expando,b=this[a];b&&b.events&&b.events[h]&&f.event.trigger(c,d,b.handle.elem)});return}if(e.nodeType===3||e.nodeType===8)return;c.result=b,c.target=e,d=d!=null?f.makeArray(d):[],d.unshift(c);var k=e,l=h.indexOf(":")<0?"on"+h:"";do{var m=f._data(k,"handle");c.currentTarget=k,m&&m.apply(k,d),l&&f.acceptData(k)&&k[l]&&k[l].apply(k,d)===!1&&(c.result=!1,c.preventDefault()),k=k.parentNode||k.ownerDocument||k===c.target.ownerDocument&&a}while(k&&!c.isPropagationStopped());if(!c.isDefaultPrevented()){var n,o=f.event.special[h]||{};if((!o._default||o._default.call(e.ownerDocument,c)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)){try{l&&e[h]&&(n=e[l],n&&(e[l]=null),f.event.triggered=h,e[h]())}catch(p){}n&&(e[l]=n),f.event.triggered=b}}return c.result}},handle:function(c){c=f.event.fix(c||a.event);var d=((f._data(this,"events")||{})[c.type]||[]).slice(0),e=!c.exclusive&&!c.namespace,g=Array.prototype.slice.call(arguments,0);g[0]=c,c.currentTarget=this;for(var h=0,i=d.length;h<i;h++){var j=d[h];if(e||c.namespace_re.test(j.namespace)){c.handler=j.handler,c.data=j.data,c.handleObj=j;var k=j.handler.apply(this,g);k!==b&&(c.result=k,k===!1&&(c.preventDefault(),c.stopPropagation()));if(c.isImmediatePropagationStopped())break}}return c.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(a){if(a[f.expando])return a;var d=a;a=f.Event(d);for(var e=this.props.length,g;e;)g=this.props[--e],a[g]=d[g];a.target||(a.target=a.srcElement||c),a.target.nodeType===3&&(a.target=a.target.parentNode),!a.relatedTarget&&a.fromElement&&(a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement);if(a.pageX==null&&a.clientX!=null){var h=a.target.ownerDocument||c,i=h.documentElement,j=h.body;a.pageX=a.clientX+(i&&i.scrollLeft||j&&j.scrollLeft||0)-(i&&i.clientLeft||j&&j.clientLeft||0),a.pageY=a.clientY+(i&&i.scrollTop||j&&j.scrollTop||0)-(i&&i.clientTop||j&&j.clientTop||0)}a.which==null&&(a.charCode!=null||a.keyCode!=null)&&(a.which=a.charCode!=null?a.charCode:a.keyCode),!a.metaKey&&a.ctrlKey&&(a.metaKey=a.ctrlKey),!a.which&&a.button!==b&&(a.which=a.button&1?1:a.button&2?3:a.button&4?2:0);return a},guid:1e8,proxy:f.proxy,special:{ready:{setup:f.bindReady,teardown:f.noop},live:{add:function(a){f.event.add(this,N(a.origType,a.selector),f.extend({},a,{handler:M,guid:a.handler.guid}))},remove:function(a){f.event.remove(this,N(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,c){f.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}}},f.removeEvent=c.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent&&a.detachEvent("on"+b,c)},f.Event=function(a,b){if(!this.preventDefault)return new f.Event(a,b);a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?E:D):this.type=a,b&&f.extend(this,b),this.timeStamp=f.now(),this[f.expando]=!0},f.Event.prototype={preventDefault:function(){this.isDefaultPrevented=E;var a=this.originalEvent;!a||(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=E;var a=this.originalEvent;!a||(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=E,this.stopPropagation()},isDefaultPrevented:D,isPropagationStopped:D,isImmediatePropagationStopped:D};var F=function(a){var b=a.relatedTarget,c=!1,d=a.type;a.type=a.data,b!==this&&(b&&(c=f.contains(this,b)),c||(f.event.handle.apply(this,arguments),a.type=d))},G=function(a){a.type=a.data,f.event.handle.apply(this,arguments)};f.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){f.event.special[a]={setup:function(c){f.event.add(this,b,c&&c.selector?G:F,a)},teardown:function(a){f.event.remove(this,b,a&&a.selector?G:F)}}}),f.support.submitBubbles||(f.event.special.submit={setup:function(a,b){if(!f.nodeName(this,"form"))f.event.add(this,"click.specialSubmit",function(a){var b=a.target,c=b.type;(c==="submit"||c==="image")&&f(b).closest("form").length&&K("submit",this,arguments)}),f.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,c=b.type;(c==="text"||c==="password")&&f(b).closest("form").length&&a.keyCode===13&&K("submit",this,arguments)});else return!1},teardown:function(a){f.event.remove(this,".specialSubmit")}});if(!f.support.changeBubbles){var H,I=function(a){var b=a.type,c=a.value;b==="radio"||b==="checkbox"?c=a.checked:b==="select-multiple"?c=a.selectedIndex>-1?f.map(a.options,function(a){return a.selected}).join("-"):"":f.nodeName(a,"select")&&(c=a.selectedIndex);return c},J=function(c){var d=c.target,e,g;if(!!y.test(d.nodeName)&&!d.readOnly){e=f._data(d,"_change_data"),g=I(d),(c.type!=="focusout"||d.type!=="radio")&&f._data(d,"_change_data",g);if(e===b||g===e)return;if(e!=null||g)c.type="change",c.liveFired=b,f.event.trigger(c,arguments[1],d)}};f.event.special.change={filters:{focusout:J,beforedeactivate:J,click:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(c==="radio"||c==="checkbox"||f.nodeName(b,"select"))&&J.call(this,a)},keydown:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(a.keyCode===13&&!f.nodeName(b,"textarea")||a.keyCode===32&&(c==="checkbox"||c==="radio")||c==="select-multiple")&&J.call(this,a)},beforeactivate:function(a){var b=a.target;f._data(b,"_change_data",I(b))}},setup:function(a,b){if(this.type==="file")return!1;for(var c in H)f.event.add(this,c+".specialChange",H[c]);return y.test(this.nodeName)},teardown:function(a){f.event.remove(this,".specialChange");return y.test(this.nodeName)}},H=f.event.special.change.filters,H.focus=H.beforeactivate}f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){function e(a){var c=f.event.fix(a);c.type=b,c.originalEvent={},f.event.trigger(c,null,c.target),c.isDefaultPrevented()&&a.preventDefault()}var d=0;f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.each(["bind","one"],function(a,c){f.fn[c]=function(a,d,e){var g;if(typeof a=="object"){for(var h in a)this[c](h,d,a[h],e);return this}if(arguments.length===2||d===!1)e=d,d=b;c==="one"?(g=function(a){f(this).unbind(a,g);return e.apply(this,arguments)},g.guid=e.guid||f.guid++):g=e;if(a==="unload"&&c!=="one")this.one(a,d,e);else for(var i=0,j=this.length;i<j;i++)f.event.add(this[i],a,g,d);return this}}),f.fn.extend({unbind:function(a,b){if(typeof a=="object"&&!a.preventDefault)for(var c in a)this.unbind(c,a[c]);else for(var d=0,e=this.length;d<e;d++)f.event.remove(this[d],a,b);return this},delegate:function(a,b,c,d){return this.live(b,c,d,a)},undelegate:function(a,b,c){return arguments.length===0?this.unbind("live"):this.die(b,null,c,a)},trigger:function(a,b){return this.each(function(){f.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return f.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||f.guid++,d=0,e=function(c){var e=(f.data(this,"lastToggle"+a.guid)||0)%d;f.data(this,"lastToggle"+a.guid,e+1),c.preventDefault();return b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var L={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};f.each(["live","die"],function(a,c){f.fn[c]=function(a,d,e,g){var h,i=0,j,k,l,m=g||this.selector,n=g?this:f(this.context);if(typeof a=="object"&&!a.preventDefault){for(var o in a)n[c](o,d,a[o],m);return this}if(c==="die"&&!a&&g&&g.charAt(0)==="."){n.unbind(g);return this}if(d===!1||f.isFunction(d))e=d||D,d=b;a=(a||"").split(" ");while((h=a[i++])!=null){j=x.exec(h),k="",j&&(k=j[0],h=h.replace(x,""));if(h==="hover"){a.push("mouseenter"+k,"mouseleave"+k);continue}l=h,L[h]?(a.push(L[h]+k),h=h+k):h=(L[h]||h)+k;if(c==="live")for(var p=0,q=n.length;p<q;p++)f.event.add(n[p],"live."+N(h,m),{data:d,selector:m,handler:e,origType:h,origHandler:e,preType:l});else n.unbind("live."+N(h,m),e)}return this}}),f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){f.fn[b]=function(a,c){c==null&&(c=a,a=null);return arguments.length>0?this.bind(b,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0)}),function(){function u(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}if(i.nodeType===1){f||(i.sizcache=c,i.sizset=g);if(typeof b!="string"){if(i===b){j=!0;break}}else if(k.filter(b,[i]).length>0){j=i;break}}i=i[a]}d[g]=j}}}function t(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}i.nodeType===1&&!f&&(i.sizcache=c,i.sizset=g);if(i.nodeName.toLowerCase()===b){j=i;break}i=i[a]}d[g]=j}}}var a=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d=0,e=Object.prototype.toString,g=!1,h=!0,i=/\\/g,j=/\W/;[0,0].sort(function(){h=!1;return 0});var k=function(b,d,f,g){f=f||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return f;var i,j,n,o,q,r,s,t,u=!0,w=k.isXML(d),x=[],y=b;do{a.exec(""),i=a.exec(y);if(i){y=i[3],x.push(i[1]);if(i[2]){o=i[3];break}}}while(i);if(x.length>1&&m.exec(b))if(x.length===2&&l.relative[x[0]])j=v(x[0]+x[1],d);else{j=l.relative[x[0]]?[d]:k(x.shift(),d);while(x.length)b=x.shift(),l.relative[b]&&(b+=x.shift()),j=v(b,j)}else{!g&&x.length>1&&d.nodeType===9&&!w&&l.match.ID.test(x[0])&&!l.match.ID.test(x[x.length-1])&&(q=k.find(x.shift(),d,w),d=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]);if(d){q=g?{expr:x.pop(),set:p(g)}:k.find(x.pop(),x.length===1&&(x[0]==="~"||x[0]==="+")&&d.parentNode?d.parentNode:d,w),j=q.expr?k.filter(q.expr,q.set):q.set,x.length>0?n=p(j):u=!1;while(x.length)r=x.pop(),s=r,l.relative[r]?s=x.pop():r="",s==null&&(s=d),l.relative[r](n,s,w)}else n=x=[]}n||(n=j),n||k.error(r||b);if(e.call(n)==="[object Array]")if(!u)f.push.apply(f,n);else if(d&&d.nodeType===1)for(t=0;n[t]!=null;t++)n[t]&&(n[t]===!0||n[t].nodeType===1&&k.contains(d,n[t]))&&f.push(j[t]);else for(t=0;n[t]!=null;t++)n[t]&&n[t].nodeType===1&&f.push(j[t]);else p(n,f);o&&(k(o,h,f,g),k.uniqueSort(f));return f};k.uniqueSort=function(a){if(r){g=h,a.sort(r);if(g)for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1)}return a},k.matches=function(a,b){return k(a,null,null,b)},k.matchesSelector=function(a,b){return k(b,null,null,[a]).length>0},k.find=function(a,b,c){var d;if(!a)return[];for(var e=0,f=l.order.length;e<f;e++){var g,h=l.order[e];if(g=l.leftMatch[h].exec(a)){var j=g[1];g.splice(1,1);if(j.substr(j.length-1)!=="\\"){g[1]=(g[1]||"").replace(i,""),d=l.find[h](g,b,c);if(d!=null){a=a.replace(l.match[h],"");break}}}}d||(d=typeof b.getElementsByTagName!="undefined"?b.getElementsByTagName("*"):[]);return{set:d,expr:a}},k.filter=function(a,c,d,e){var f,g,h=a,i=[],j=c,m=c&&c[0]&&k.isXML(c[0]);while(a&&c.length){for(var n in l.filter)if((f=l.leftMatch[n].exec(a))!=null&&f[2]){var o,p,q=l.filter[n],r=f[1];g=!1,f.splice(1,1);if(r.substr(r.length-1)==="\\")continue;j===i&&(i=[]);if(l.preFilter[n]){f=l.preFilter[n](f,j,d,i,e,m);if(!f)g=o=!0;else if(f===!0)continue}if(f)for(var s=0;(p=j[s])!=null;s++)if(p){o=q(p,f,s,j);var t=e^!!o;d&&o!=null?t?g=!0:j[s]=!1:t&&(i.push(p),g=!0)}if(o!==b){d||(j=i),a=a.replace(l.match[n],"");if(!g)return[];break}}if(a===h)if(g==null)k.error(a);else break;h=a}return j},k.error=function(a){throw"Syntax error, unrecognized expression: "+a};var l=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var c=typeof b=="string",d=c&&!j.test(b),e=c&&!d;d&&(b=b.toLowerCase());for(var f=0,g=a.length,h;f<g;f++)if(h=a[f]){while((h=h.previousSibling)&&h.nodeType!==1);a[f]=e||h&&h.nodeName.toLowerCase()===b?h||!1:h===b}e&&k.filter(b,a,!0)},">":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!j.test(b)){b=b.toLowerCase();for(;e<f;e++){c=a[e];if(c){var g=c.parentNode;a[e]=g.nodeName.toLowerCase()===b?g:!1}}}else{for(;e<f;e++)c=a[e],c&&(a[e]=d?c.parentNode:c.parentNode===b);d&&k.filter(b,a,!0)}},"":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("parentNode",b,f,a,e,c)},"~":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("previousSibling",b,f,a,e,c)}},find:{ID:function(a,b,c){if(typeof b.getElementById!="undefined"&&!c){var d=b.getElementById(a[1]);return d&&d.parentNode?[d]:[]}},NAME:function(a,b){if(typeof b.getElementsByName!="undefined"){var c=[],d=b.getElementsByName(a[1]);for(var e=0,f=d.length;e<f;e++)d[e].getAttribute("name")===a[1]&&c.push(d[e]);return c.length===0?null:c}},TAG:function(a,b){if(typeof b.getElementsByTagName!="undefined")return b.getElementsByTagName(a[1])}},preFilter:{CLASS:function(a,b,c,d,e,f){a=" "+a[1].replace(i,"")+" ";if(f)return a;for(var g=0,h;(h=b[g])!=null;g++)h&&(e^(h.className&&(" "+h.className+" ").replace(/[\t\n\r]/g," ").indexOf(a)>=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(i,"")},TAG:function(a,b){return a[1].replace(i,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||k.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&k.error(a[0]);a[0]=d++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(i,"");!f&&l.attrMap[g]&&(a[1]=l.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(i,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=k(b[3],null,null,c);else{var g=k.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(l.match.POS.test(b[0])||l.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!k(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return b<c[3]-0},gt:function(a,b,c){return b>c[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=l.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||k.getText([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h<i;h++)if(g[h]===a)return!1;return!0}k.error(e)},CHILD:function(a,b){var c=b[1],d=a;switch(c){case"only":case"first":while(d=d.previousSibling)if(d.nodeType===1)return!1;if(c==="first")return!0;d=a;case"last":while(d=d.nextSibling)if(d.nodeType===1)return!1;return!0;case"nth":var e=b[2],f=b[3];if(e===1&&f===0)return!0;var g=b[0],h=a.parentNode;if(h&&(h.sizcache!==g||!a.nodeIndex)){var i=0;for(d=h.firstChild;d;d=d.nextSibling)d.nodeType===1&&(d.nodeIndex=++i);h.sizcache=g}var j=a.nodeIndex-f;return e===0?j===0:j%e===0&&j/e>=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=l.attrHandle[c]?l.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=l.setFilters[e];if(f)return f(a,c,b,d)}}},m=l.match.POS,n=function(a,b){return"\\"+(b-0+1)};for(var o in l.match)l.match[o]=new RegExp(l.match[o].source+/(?![^\[]*\])(?![^\(]*\))/.source),l.leftMatch[o]=new RegExp(/(^(?:.|\r|\n)*?)/.source+l.match[o].source.replace(/\\(\d+)/g,n));var p=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(q){p=function(a,b){var c=0,d=b||[];if(e.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var f=a.length;c<f;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var r,s;c.documentElement.compareDocumentPosition?r=function(a,b){if(a===b){g=!0;return 0}if(!a.compareDocumentPosition||!b.compareDocumentPosition)return a.compareDocumentPosition?-1:1;return a.compareDocumentPosition(b)&4?-1:1}:(r=function(a,b){if(a===b){g=!0;return 0}if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],h=a.parentNode,i=b.parentNode,j=h;if(h===i)return s(a,b);if(!h)return-1;if(!i)return 1;while(j)e.unshift(j),j=j.parentNode;j=i;while(j)f.unshift(j),j=j.parentNode;c=e.length,d=f.length;for(var k=0;k<c&&k<d;k++)if(e[k]!==f[k])return s(e[k],f[k]);return k===c?s(a,f[k],-1):s(e[k],b,1)},s=function(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}),k.getText=function(a){var b="",c;for(var d=0;a[d];d++)c=a[d],c.nodeType===3||c.nodeType===4?b+=c.nodeValue:c.nodeType!==8&&(b+=k.getText(c.childNodes));return b},function(){var a=c.createElement("div"),d="script"+(new Date).getTime(),e=c.documentElement;a.innerHTML="<a name='"+d+"'/>",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(l.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},l.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(l.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(l.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=k,b=c.createElement("div"),d="__sizzle__";b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){k=function(b,e,f,g){e=e||c;if(!g&&!k.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return p(e.getElementsByTagName(b),f);if(h[2]&&l.find.CLASS&&e.getElementsByClassName)return p(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return p([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return p([],f);if(i.id===h[3])return p([i],f)}try{return p(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var m=e,n=e.getAttribute("id"),o=n||d,q=e.parentNode,r=/^\s*[+~]/.test(b);n?o=o.replace(/'/g,"\\$&"):e.setAttribute("id",o),r&&q&&(e=e.parentNode);try{if(!r||q)return p(e.querySelectorAll("[id='"+o+"'] "+b),f)}catch(s){}finally{n||m.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)k[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}k.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(a))try{if(e||!l.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return k(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;l.order.splice(1,0,"CLASS"),l.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?k.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?k.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:k.contains=function(){return!1},k.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var v=function(a,b){var c,d=[],e="",f=b.nodeType?[b]:b;while(c=l.match.PSEUDO.exec(a))e+=c[0],a=a.replace(l.match.PSEUDO,"");a=l.relative[a]?a+"*":a;for(var g=0,h=f.length;g<h;g++)k(a,f[g],d);return k.filter(e,d)};f.find=k,f.expr=k.selectors,f.expr[":"]=f.expr.filters,f.unique=k.uniqueSort,f.text=k.getText,f.isXMLDoc=k.isXML,f.contains=k.contains}();var O=/Until$/,P=/^(?:parents|prevUntil|prevAll)/,Q=/,/,R=/^.[^:#\[\.,]*$/,S=Array.prototype.slice,T=f.expr.match.POS,U={children:!0,contents:!0,next:!0,prev:!0};f.fn.extend({find:function(a){var b=this,c,d;if(typeof a!="string")return f(a).filter(function(){for(c=0,d=b.length;c<d;c++)if(f.contains(b[c],this))return!0});var e=this.pushStack("","find",a),g,h,i;for(c=0,d=this.length;c<d;c++){g=e.length,f.find(a,this[c],e);if(c>0)for(h=g;h<e.length;h++)for(i=0;i<g;i++)if(e[i]===e[h]){e.splice(h--,1);break}}return e},has:function(a){var b=f(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(f.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(W(this,a,!1),"not",a)},filter:function(a){return this.pushStack(W(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h,i,j={},k=1;if(g&&a.length){for(d=0,e=a.length;d<e;d++)i=a[d],j[i]||(j[i]=T.test(i)?f(i,b||this.context):i);while(g&&g.ownerDocument&&g!==b){for(i in j)h=j[i],(h.jquery?h.index(g)>-1:f(g).is(h))&&c.push({selector:i,elem:g,level:k});g=g.parentNode,k++}}return c}var l=T.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d<e;d++){g=this[d];while(g){if(l?l.index(g)>-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a||typeof a=="string")return f.inArray(this[0],a?f(a):this.parent().children());return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(V(c[0])||V(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c),g=S.call(arguments);O.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!U[a]?f.unique(e):e,(this.length>1||Q.test(d))&&P.test(a)&&(e=e.reverse());return this.pushStack(e,a,g.join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var X=/ jQuery\d+="(?:\d+|null)"/g,Y=/^\s+/,Z=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,$=/<([\w:]+)/,_=/<tbody/i,ba=/<|&#?\w+;/,bb=/<(?:script|object|embed|option|style)/i,bc=/checked\s*(?:[^=]|=\s*.checked.)/i,bd=/\/(java|ecma)script/i,be=/^\s*<!(?:\[CDATA\[|\-\-)/,bf={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};bf.optgroup=bf.option,bf.tbody=bf.tfoot=bf.colgroup=bf.caption=bf.thead,bf.th=bf.td,f.support.htmlSerialize||(bf._default=[1,"div<div>","</div>"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){f(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f(arguments[0]).toArray());return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(X,""):null;if(typeof a=="string"&&!bb.test(a)&&(f.support.leadingWhitespace||!Y.test(a))&&!bf[($.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Z,"<$1></$2>");try{for(var c=0,d=this.length;c<d;c++)this[c].nodeType===1&&(f.cleanData(this[c].getElementsByTagName("*")),this[c].innerHTML=a)}catch(e){this.empty().append(a)}}else f.isFunction(a)?this.each(function(b){var c=f(this);c.html(a.call(this,b,c.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(f.isFunction(a))return this.each(function(b){var c=f(this),d=c.html();c.replaceWith(a.call(this,b,d))});typeof a!="string"&&(a=f(a).detach());return this.each(function(){var b=this.nextSibling,c=this.parentNode;f(this).remove(),b?f(b).before(a):f(c).append(a)})}return this.length?this.pushStack(f(f.isFunction(a)?a():a),"replaceWith",a):this},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){var e,g,h,i,j=a[0],k=[];if(!f.support.checkClone&&arguments.length===3&&typeof j=="string"&&bc.test(j))return this.each(function(){f(this).domManip(a,c,d,!0)});if(f.isFunction(j))return this.each(function(e){var g=f(this);a[0]=j.call(this,e,c?g.html():b),g.domManip(a,c,d)});if(this[0]){i=j&&j.parentNode,f.support.parentNode&&i&&i.nodeType===11&&i.childNodes.length===this.length?e={fragment:i}:e=f.buildFragment(a,this,k),h=e.fragment,h.childNodes.length===1?g=h=h.firstChild:g=h.firstChild;if(g){c=c&&f.nodeName(g,"tr");for(var l=0,m=this.length,n=m-1;l<m;l++)d.call(c?bg(this[l],g):this[l],e.cacheable||m>1&&l<n?f.clone(h,!0,!0):h)}k.length&&f.each(k,bm)}return this}}),f.buildFragment=function(a,b,d){var e,g,h,i;b&&b[0]&&(i=b[0].ownerDocument||b[0]),i.createDocumentFragment||(i=c),a.length===1&&typeof a[0]=="string"&&a[0].length<512&&i===c&&a[0].charAt(0)==="<"&&!bb.test(a[0])&&(f.support.checkClone||!bc.test(a[0]))&&(g=!0,h=f.fragments[a[0]],h&&h!==1&&(e=h)),e||(e=i.createDocumentFragment(),f.clean(a,i,e,d)),g&&(f.fragments[a[0]]=h?e:1);return{fragment:e,cacheable:g}},f.fragments={},f.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){f.fn[a]=function(c){var d=[],e=f(c),g=this.length===1&&this[0].parentNode;if(g&&g.nodeType===11&&g.childNodes.length===1&&e.length===1){e[b](this[0]);return this}for(var h=0,i=e.length;h<i;h++){var j=(h>0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j
)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d=a.cloneNode(!0),e,g,h;if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bi(a,d),e=bj(a),g=bj(d);for(h=0;e[h];++h)bi(e[h],g[h])}if(b){bh(a,d);if(c){e=bj(a),g=bj(d);for(h=0;e[h];++h)bh(e[h],g[h])}}e=g=null;return d},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!ba.test(k))k=b.createTextNode(k);else{k=k.replace(Z,"<$1></$2>");var l=($.exec(k)||["",""])[1].toLowerCase(),m=bf[l]||bf._default,n=m[0],o=b.createElement("div");o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=_.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]==="<table>"&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&Y.test(k)&&o.insertBefore(b.createTextNode(Y.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i<r;i++)bl(k[i]);else bl(k);k.nodeType?h.push(k):h=f.merge(h,k)}if(d){g=function(a){return!a.type||bd.test(a.type)};for(j=0;h[j];j++)if(e&&f.nodeName(h[j],"script")&&(!h[j].type||h[j].type.toLowerCase()==="text/javascript"))e.push(h[j].parentNode?h[j].parentNode.removeChild(h[j]):h[j]);else{if(h[j].nodeType===1){var s=f.grep(h[j].getElementsByTagName("script"),g);h.splice.apply(h,[j+1,0].concat(s))}d.appendChild(h[j])}}return h},cleanData:function(a){var b,c,d=f.cache,e=f.expando,g=f.event.special,h=f.support.deleteExpando;for(var i=0,j;(j=a[i])!=null;i++){if(j.nodeName&&f.noData[j.nodeName.toLowerCase()])continue;c=j[f.expando];if(c){b=d[c]&&d[c][e];if(b&&b.events){for(var k in b.events)g[k]?f.event.remove(j,k):f.removeEvent(j,k,b.handle);b.handle&&(b.handle.elem=null)}h?delete j[f.expando]:j.removeAttribute&&j.removeAttribute(f.expando),delete d[c]}}}});var bn=/alpha\([^)]*\)/i,bo=/opacity=([^)]*)/,bp=/([A-Z]|^ms)/g,bq=/^-?\d+(?:px)?$/i,br=/^-?\d/,bs=/^[+\-]=/,bt=/[^+\-\.\de]+/g,bu={position:"absolute",visibility:"hidden",display:"block"},bv=["Left","Right"],bw=["Top","Bottom"],bx,by,bz;f.fn.css=function(a,c){if(arguments.length===2&&c===b)return this;return f.access(this,a,c,!0,function(a,c,d){return d!==b?f.style(a,c,d):f.css(a,c)})},f.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bx(a,"opacity","opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!!a&&a.nodeType!==3&&a.nodeType!==8&&!!a.style){var g,h,i=f.camelCase(c),j=a.style,k=f.cssHooks[i];c=f.cssProps[i]||i;if(d===b){if(k&&"get"in k&&(g=k.get(a,!1,e))!==b)return g;return j[c]}h=typeof d;if(h==="number"&&isNaN(d)||d==null)return;h==="string"&&bs.test(d)&&(d=+d.replace(bt,"")+parseFloat(f.css(a,c)),h="number"),h==="number"&&!f.cssNumber[i]&&(d+="px");if(!k||!("set"in k)||(d=k.set(a,d))!==b)try{j[c]=d}catch(l){}}},css:function(a,c,d){var e,g;c=f.camelCase(c),g=f.cssHooks[c],c=f.cssProps[c]||c,c==="cssFloat"&&(c="float");if(g&&"get"in g&&(e=g.get(a,!0,d))!==b)return e;if(bx)return bx(a,c)},swap:function(a,b,c){var d={};for(var e in b)d[e]=a.style[e],a.style[e]=b[e];c.call(a);for(e in b)a.style[e]=d[e]}}),f.curCSS=f.css,f.each(["height","width"],function(a,b){f.cssHooks[b]={get:function(a,c,d){var e;if(c){if(a.offsetWidth!==0)return bA(a,b,d);f.swap(a,bu,function(){e=bA(a,b,d)});return e}},set:function(a,b){if(!bq.test(b))return b;b=parseFloat(b);if(b>=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return bo.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle;c.zoom=1;var e=f.isNaN(b)?"":"alpha(opacity="+b*100+")",g=d&&d.filter||c.filter||"";c.filter=bn.test(g)?g.replace(bn,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bx(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(by=function(a,c){var d,e,g;c=c.replace(bp,"-$1").toLowerCase();if(!(e=a.ownerDocument.defaultView))return b;if(g=e.getComputedStyle(a,null))d=g.getPropertyValue(c),d===""&&!f.contains(a.ownerDocument.documentElement,a)&&(d=f.style(a,c));return d}),c.documentElement.currentStyle&&(bz=function(a,b){var c,d=a.currentStyle&&a.currentStyle[b],e=a.runtimeStyle&&a.runtimeStyle[b],f=a.style;!bq.test(d)&&br.test(d)&&(c=f.left,e&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":d||0,d=f.pixelLeft+"px",f.left=c,e&&(a.runtimeStyle.left=e));return d===""?"auto":d}),bx=by||bz,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bB=/%20/g,bC=/\[\]$/,bD=/\r?\n/g,bE=/#.*$/,bF=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bG=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bH=/^(?:about|app|app\-storage|.+\-extension|file|widget):$/,bI=/^(?:GET|HEAD)$/,bJ=/^\/\//,bK=/\?/,bL=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,bM=/^(?:select|textarea)/i,bN=/\s+/,bO=/([?&])_=[^&]*/,bP=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bQ=f.fn.load,bR={},bS={},bT,bU;try{bT=e.href}catch(bV){bT=c.createElement("a"),bT.href="",bT=bT.href}bU=bP.exec(bT.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bQ)return bQ.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("<div>").append(c.replace(bL,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bM.test(this.nodeName)||bG.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bD,"\r\n")}}):{name:b.name,value:c.replace(bD,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.bind(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?f.extend(!0,a,f.ajaxSettings,b):(b=a,a=f.extend(!0,f.ajaxSettings,b));for(var c in{context:1,url:1})c in b?a[c]=b[c]:c in f.ajaxSettings&&(a[c]=f.ajaxSettings[c]);return a},ajaxSettings:{url:bT,isLocal:bH.test(bU[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":"*/*"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML}},ajaxPrefilter:bW(bR),ajaxTransport:bW(bS),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a?4:0;var o,r,u,w=l?bZ(d,v,l):b,x,y;if(a>=200&&a<300||a===304){if(d.ifModified){if(x=v.getResponseHeader("Last-Modified"))f.lastModified[k]=x;if(y=v.getResponseHeader("Etag"))f.etag[k]=y}if(a===304)c="notmodified",o=!0;else try{r=b$(d,w),c="success",o=!0}catch(z){c="parsererror",u=z}}else{u=c;if(!c||a)c="error",a<0&&(a=0)}v.status=a,v.statusText=c,o?h.resolveWith(e,[r,c,v]):h.rejectWith(e,[v,c,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.resolveWith(e,[v,c]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f._Deferred(),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bF.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.done,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bE,"").replace(bJ,bU[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bN),d.crossDomain==null&&(r=bP.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bU[1]&&r[2]==bU[2]&&(r[3]||(r[1]==="http:"?80:443))==(bU[3]||(bU[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),bX(bR,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bI.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bK.test(d.url)?"&":"?")+d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bO,"$1_="+x);d.url=y+(y===d.url?(bK.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", */*; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=bX(bS,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){status<2?w(-1,z):f.error(z)}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)bY(g,a[g],c,e);return d.join("&").replace(bB,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var b_=f.now(),ca=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+b_++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ca.test(b.url)||e&&ca.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ca,l),b.url===j&&(e&&(k=k.replace(ca,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cb=a.ActiveXObject?function(){for(var a in cd)cd[a](0,1)}:!1,cc=0,cd;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ce()||cf()}:ce,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cb&&delete cd[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cc,cb&&(cd||(cd={},f(a).unload(cb)),cd[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var cg={},ch,ci,cj=/^(?:toggle|show|hide)$/,ck=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cl,cm=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cn,co=a.webkitRequestAnimationFrame||a.mozRequestAnimationFrame||a.oRequestAnimationFrame;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cr("show",3),a,b,c);for(var g=0,h=this.length;g<h;g++)d=this[g],d.style&&(e=d.style.display,!f._data(d,"olddisplay")&&e==="none"&&(e=d.style.display=""),e===""&&f.css(d,"display")==="none"&&f._data(d,"olddisplay",cs(d.nodeName)));for(g=0;g<h;g++){d=this[g];if(d.style){e=d.style.display;if(e===""||e==="none")d.style.display=f._data(d,"olddisplay")||""}}return this},hide:function(a,b,c){if(a||a===0)return this.animate(cr("hide",3),a,b,c);for(var d=0,e=this.length;d<e;d++)if(this[d].style){var g=f.css(this[d],"display");g!=="none"&&!f._data(this[d],"olddisplay")&&f._data(this[d],"olddisplay",g)}for(d=0;d<e;d++)this[d].style&&(this[d].style.display="none");return this},_toggle:f.fn.toggle,toggle:function(a,b,c){var d=typeof a=="boolean";f.isFunction(a)&&f.isFunction(b)?this._toggle.apply(this,arguments):a==null||d?this.each(function(){var b=d?a:f(this).is(":hidden");f(this)[b?"show":"hide"]()}):this.animate(cr("toggle",3),a,b,c);return this},fadeTo:function(a,b,c,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=f.speed(b,c,d);if(f.isEmptyObject(a))return this.each(e.complete,[!1]);a=f.extend({},a);return this[e.queue===!1?"each":"queue"](function(){e.queue===!1&&f._mark(this);var b=f.extend({},e),c=this.nodeType===1,d=c&&f(this).is(":hidden"),g,h,i,j,k,l,m,n,o;b.animatedProperties={};for(i in a){g=f.camelCase(i),i!==g&&(a[g]=a[i],delete a[i]),h=a[g],f.isArray(h)?(b.animatedProperties[g]=h[1],h=a[g]=h[0]):b.animatedProperties[g]=b.specialEasing&&b.specialEasing[g]||b.easing||"swing";if(h==="hide"&&d||h==="show"&&!d)return b.complete.call(this);c&&(g==="height"||g==="width")&&(b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY],f.css(this,"display")==="inline"&&f.css(this,"float")==="none"&&(f.support.inlineBlockNeedsLayout?(j=cs(this.nodeName),j==="inline"?this.style.display="inline-block":(this.style.display="inline",this.style.zoom=1)):this.style.display="inline-block"))}b.overflow!=null&&(this.style.overflow="hidden");for(i in a)k=new f.fx(this,b,i),h=a[i],cj.test(h)?k[h==="toggle"?d?"show":"hide":h]():(l=ck.exec(h),m=k.cur(),l?(n=parseFloat(l[2]),o=l[3]||(f.cssNumber[i]?"":"px"),o!=="px"&&(f.style(this,i,(n||1)+o),m=(n||1)/k.cur()*m,f.style(this,i,m+o)),l[1]&&(n=(l[1]==="-="?-1:1)*n+m),k.custom(m,n,o)):k.custom(m,h,""));return!0})},stop:function(a,b){a&&this.queue([]),this.each(function(){var a=f.timers,c=a.length;b||f._unmark(!0,this);while(c--)a[c].elem===this&&(b&&a[c](!0),a.splice(c,1))}),b||this.dequeue();return this}}),f.each({slideDown:cr("show",1),slideUp:cr("hide",1),slideToggle:cr("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){f.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),f.extend({speed:function(a,b,c){var d=a&&typeof a=="object"?f.extend({},a):{complete:c||!c&&b||f.isFunction(a)&&a,duration:a,easing:c&&b||b&&!f.isFunction(b)&&b};d.duration=f.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in f.fx.speeds?f.fx.speeds[d.duration]:f.fx.speeds._default,d.old=d.complete,d.complete=function(a){f.isFunction(d.old)&&d.old.call(this),d.queue!==!1?f.dequeue(this):a!==!1&&f._unmark(this)};return d},easing:{linear:function(a,b,c,d){return c+d*a},swing:function(a,b,c,d){return(-Math.cos(a*Math.PI)/2+.5)*d+c}},timers:[],fx:function(a,b,c){this.options=b,this.elem=a,this.prop=c,b.orig=b.orig||{}}}),f.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this),(f.fx.step[this.prop]||f.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a,b=f.css(this.elem,this.prop);return isNaN(a=parseFloat(b))?!b||b==="auto"?0:b:a},custom:function(a,b,c){function h(a){return d.step(a)}var d=this,e=f.fx,g;this.startTime=cn||cp(),this.start=a,this.end=b,this.unit=c||this.unit||(f.cssNumber[this.prop]?"":"px"),this.now=this.start,this.pos=this.state=0,h.elem=this.elem,h()&&f.timers.push(h)&&!cl&&(co?(cl=!0,g=function(){cl&&(co(g),e.tick())},co(g)):cl=setInterval(e.tick,e.interval))},show:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.show=!0,this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur()),f(this.elem).show()},hide:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.hide=!0,this.custom(this.cur(),0)},step:function(a){var b=cn||cp(),c=!0,d=this.elem,e=this.options,g,h;if(a||b>=e.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),e.animatedProperties[this.prop]=!0;for(g in e.animatedProperties)e.animatedProperties[g]!==!0&&(c=!1);if(c){e.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){d.style["overflow"+b]=e.overflow[a]}),e.hide&&f(d).hide();if(e.hide||e.show)for(var i in e.animatedProperties)f.style(d,i,e.orig[i]);e.complete.call(d)}return!1}e.duration==Infinity?this.now=b:(h=b-this.startTime,this.state=h/e.duration,this.pos=f.easing[e.animatedProperties[this.prop]](this.state,h,0,1,e.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){for(var a=f.timers,b=0;b<a.length;++b)a[b]()||a.splice(b--,1);a.length||f.fx.stop()},interval:13,stop:function(){clearInterval(cl),cl=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){f.style(a.elem,"opacity",a.now)},_default:function(a){a.elem.style&&a.elem.style[a.prop]!=null?a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit:a.elem[a.prop]=a.now}}}),f.expr&&f.expr.filters&&(f.expr.filters.animated=function(a){return f.grep(f.timers,function(b){return a===b.elem}).length});var ct=/^t(?:able|d|h)$/i,cu=/^(?:body|html)$/i;"getBoundingClientRect"in c.documentElement?f.fn.offset=function(a){var b=this[0],c;if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);try{c=b.getBoundingClientRect()}catch(d){}var e=b.ownerDocument,g=e.documentElement;if(!c||!f.contains(g,b))return c?{top:c.top,left:c.left}:{top:0,left:0};var h=e.body,i=cv(e),j=g.clientTop||h.clientTop||0,k=g.clientLeft||h.clientLeft||0,l=i.pageYOffset||f.support.boxModel&&g.scrollTop||h.scrollTop,m=i.pageXOffset||f.support.boxModel&&g.scrollLeft||h.scrollLeft,n=c.top+l-j,o=c.left+m-k;return{top:n,left:o}}:f.fn.offset=function(a){var b=this[0];if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);f.offset.initialize();var c,d=b.offsetParent,e=b,g=b.ownerDocument,h=g.documentElement,i=g.body,j=g.defaultView,k=j?j.getComputedStyle(b,null):b.currentStyle,l=b.offsetTop,m=b.offsetLeft;while((b=b.parentNode)&&b!==i&&b!==h){if(f.offset.supportsFixedPosition&&k.position==="fixed")break;c=j?j.getComputedStyle(b,null):b.currentStyle,l-=b.scrollTop,m-=b.scrollLeft,b===d&&(l+=b.offsetTop,m+=b.offsetLeft,f.offset.doesNotAddBorder&&(!f.offset.doesAddBorderForTableAndCells||!ct.test(b.nodeName))&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),e=d,d=b.offsetParent),f.offset.subtractsBorderForOverflowNotVisible&&c.overflow!=="visible"&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),k=c}if(k.position==="relative"||k.position==="static")l+=i.offsetTop,m+=i.offsetLeft;f.offset.supportsFixedPosition&&k.position==="fixed"&&(l+=Math.max(h.scrollTop,i.scrollTop),m+=Math.max(h.scrollLeft,i.scrollLeft));return{top:l,left:m}},f.offset={initialize:function(){var a=c.body,b=c.createElement("div"),d,e,g,h,i=parseFloat(f.css(a,"marginTop"))||0,j="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";f.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"}),b.innerHTML=j,a.insertBefore(b,a.firstChild),d=b.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,this.doesNotAddBorder=e.offsetTop!==5,this.doesAddBorderForTableAndCells=h.offsetTop===5,e.style.position="fixed",e.style.top="20px",this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==i,a.removeChild(b),f.offset.initialize=f.noop},bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.offset.initialize(),f.offset.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cu.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cu.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cv(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cv(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a&&a.style?parseFloat(f.css(a,d,"padding")):null},f.fn["outer"+c]=function(a){var b=this[0];return b&&b.style?parseFloat(f.css(b,d,a?"margin":"border")):null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c];return e.document.compatMode==="CSS1Compat"&&g||e.document.body["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var h=f.css(e,d),i=parseFloat(h);return f.isNaN(i)?h:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f})(window);
(function(){var doc=document,win=window,math=Math,mathRound=math.round,mathFloor=math.floor,mathCeil=math.ceil,mathMax=math.max,mathMin=math.min,mathAbs=math.abs,mathCos=math.cos,mathSin=math.sin,mathPI=math.PI,deg2rad=mathPI*2/360,userAgent=navigator.userAgent,isIE=/msie/i.test(userAgent)&&!win.opera,docMode8=doc.documentMode===8,isWebKit=/AppleWebKit/.test(userAgent),isFirefox=/Firefox/.test(userAgent),hasSVG=!!doc.createElementNS&&!!doc.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect,SVG_NS='http://www.w3.org/2000/svg',Renderer,hasTouch=doc.documentElement.ontouchstart!==undefined,colorCounter,symbolCounter,symbolSizes={},idCounter=0,timeFactor=1,garbageBin,defaultOptions,dateFormat,globalAnimation,pathAnim,UNDEFINED,DIV='div',ABSOLUTE='absolute',RELATIVE='relative',HIDDEN='hidden',PREFIX='highcharts-',VISIBLE='visible',PX='px',NONE='none',M='M',L='L',TRACKER_FILL='rgba(192,192,192,'+(hasSVG?0.000001:0.002)+')',NORMAL_STATE='',HOVER_STATE='hover',SELECT_STATE='select',makeTime,getMinutes,getHours,getDay,getDate,getMonth,getFullYear,setMinutes,setHours,setDate,setMonth,setFullYear,globalAdapter=win.HighchartsAdapter,adapter=globalAdapter||{},each=adapter.each,grep=adapter.grep,map=adapter.map,merge=adapter.merge,hyphenate=adapter.hyphenate,addEvent=adapter.addEvent,removeEvent=adapter.removeEvent,fireEvent=adapter.fireEvent,animate=adapter.animate,stop=adapter.stop,seriesTypes={},hoverChart;function extend(a,b){var n;if(!a){a={};}
for(n in b){a[n]=b[n];}
return a;}
function pInt(s,mag){return parseInt(s,mag||10);}
function isString(s){return typeof s==='string';}
function isObject(obj){return typeof obj==='object';}
function isNumber(n){return typeof n==='number';}
function log2lin(num){return math.log(num)/math.LN10;}
function lin2log(num){return math.pow(10,num);}
function erase(arr,item){var i=arr.length;while(i--){if(arr[i]===item){arr.splice(i,1);break;}}}
function defined(obj){return obj!==UNDEFINED&&obj!==null;}
function attr(elem,prop,value){var key,setAttribute='setAttribute',ret;if(isString(prop)){if(defined(value)){elem[setAttribute](prop,value);}else if(elem&&elem.getAttribute){ret=elem.getAttribute(prop);}}else if(defined(prop)&&isObject(prop)){for(key in prop){elem[setAttribute](key,prop[key]);}}
return ret;}
function splat(obj){if(!obj||obj.constructor!==Array){obj=[obj];}
return obj;}
function pick(){var args=arguments,i,arg,length=args.length;for(i=0;i<length;i++){arg=args[i];if(typeof arg!=='undefined'&&arg!==null){return arg;}}}
function serializeCSS(style){var s='',key;for(key in style){s+=key+':'+style[key]+';';}
return s;}
function css(el,styles){if(isIE){if(styles&&styles.opacity!==UNDEFINED){styles.filter='alpha(opacity='+(styles.opacity*100)+')';}}
extend(el.style,styles);}
function createElement(tag,attribs,styles,parent,nopad){var el=doc.createElement(tag);if(attribs){extend(el,attribs);}
if(nopad){css(el,{padding:0,border:NONE,margin:0});}
if(styles){css(el,styles);}
if(parent){parent.appendChild(el);}
return el;}
function extendClass(parent,members){var object=function(){};object.prototype=new parent();extend(object.prototype,members);return object;}
function numberFormat(number,decimals,decPoint,thousandsSep){var lang=defaultOptions.lang,n=number,c=isNaN(decimals=mathAbs(decimals))?2:decimals,d=decPoint===undefined?lang.decimalPoint:decPoint,t=thousandsSep===undefined?lang.thousandsSep:thousandsSep,s=n<0?"-":"",i=String(pInt(n=mathAbs(+n||0).toFixed(c))),j=i.length>3?i.length%3:0;return s+(j?i.substr(0,j)+t:"")+i.substr(j).replace(/(\d{3})(?=\d)/g,"$1"+t)+
(c?d+mathAbs(n-i).toFixed(c).slice(2):"");}
dateFormat=function(format,timestamp,capitalize){function pad(number){return number.toString().replace(/^([0-9])$/,'0$1');}
if(!defined(timestamp)||isNaN(timestamp)){return'Invalid date';}
format=pick(format,'%Y-%m-%d %H:%M:%S');var date=new Date(timestamp*timeFactor),key,hours=date[getHours](),day=date[getDay](),dayOfMonth=date[getDate](),month=date[getMonth](),fullYear=date[getFullYear](),lang=defaultOptions.lang,langWeekdays=lang.weekdays,langMonths=lang.months,replacements={'a':langWeekdays[day].substr(0,3),'A':langWeekdays[day],'d':pad(dayOfMonth),'e':dayOfMonth,'b':langMonths[month].substr(0,3),'B':langMonths[month],'m':pad(month+1),'y':fullYear.toString().substr(2,2),'Y':fullYear,'H':pad(hours),'I':pad((hours%12)||12),'l':(hours%12)||12,'M':pad(date[getMinutes]()),'p':hours<12?'AM':'PM','P':hours<12?'am':'pm','S':pad(date.getSeconds())};for(key in replacements){format=format.replace('%'+key,replacements[key]);}
return capitalize?format.substr(0,1).toUpperCase()+format.substr(1):format;};function getPosition(el){var p={left:el.offsetLeft,top:el.offsetTop};el=el.offsetParent;while(el){p.left+=el.offsetLeft;p.top+=el.offsetTop;if(el!==doc.body&&el!==doc.documentElement){p.left-=el.scrollLeft;p.top-=el.scrollTop;}
el=el.offsetParent;}
return p;}
function setAnimation(animation,chart){globalAnimation=pick(animation,chart.animation);}
if(globalAdapter&&globalAdapter.init){globalAdapter.init();}
if(!globalAdapter&&win.jQuery){var jQ=jQuery;each=function(arr,fn){var i=0,len=arr.length;for(;i<len;i++){if(fn.call(arr[i],arr[i],i,arr)===false){return i;}}};grep=jQ.grep;map=function(arr,fn){var results=[],i=0,len=arr.length;for(;i<len;i++){results[i]=fn.call(arr[i],arr[i],i,arr);}
return results;};merge=function(){var args=arguments;return jQ.extend(true,null,args[0],args[1],args[2],args[3]);};hyphenate=function(str){return str.replace(/([A-Z])/g,function(a,b){return'-'+b.toLowerCase();});};addEvent=function(el,event,fn){jQ(el).bind(event,fn);};removeEvent=function(el,eventType,handler){var func=doc.removeEventListener?'removeEventListener':'detachEvent';if(doc[func]&&!el[func]){el[func]=function(){};}
jQ(el).unbind(eventType,handler);};fireEvent=function(el,type,eventArguments,defaultFunction){var event=jQ.Event(type),detachedType='detached'+type;extend(event,eventArguments);if(el[type]){el[detachedType]=el[type];el[type]=null;}
jQ(el).trigger(event);if(el[detachedType]){el[type]=el[detachedType];el[detachedType]=null;}
if(defaultFunction&&!event.isDefaultPrevented()){defaultFunction(event);}};animate=function(el,params,options){var $el=jQ(el);if(params.d){el.toD=params.d;params.d=1;}
$el.stop();$el.animate(params,options);};stop=function(el){jQ(el).stop();};jQ.extend(jQ.easing,{easeOutQuad:function(x,t,b,c,d){return-c*(t/=d)*(t-2)+b;}});var oldStepDefault=jQuery.fx.step._default,oldCur=jQuery.fx.prototype.cur;jQ.fx.step._default=function(fx){var elem=fx.elem;if(elem.attr){elem.attr(fx.prop,fx.now);}else{oldStepDefault.apply(this,arguments);}};jQ.fx.step.d=function(fx){var elem=fx.elem;if(!fx.started){var ends=pathAnim.init(elem,elem.d,elem.toD);fx.start=ends[0];fx.end=ends[1];fx.started=true;}
elem.attr('d',pathAnim.step(fx.start,fx.end,fx.pos,elem.toD));};jQ.fx.prototype.cur=function(){var elem=this.elem,r;if(elem.attr){r=elem.attr(this.prop);}else{r=oldCur.apply(this,arguments);}
return r;};}
pathAnim={init:function(elem,fromD,toD){fromD=fromD||'';var shift=elem.shift,bezier=fromD.indexOf('C')>-1,numParams=bezier?7:3,endLength,slice,i,start=fromD.split(' '),end=[].concat(toD),startBaseLine,endBaseLine,sixify=function(arr){i=arr.length;while(i--){if(arr[i]===M){arr.splice(i+1,0,arr[i+1],arr[i+2],arr[i+1],arr[i+2]);}}};if(bezier){sixify(start);sixify(end);}
if(elem.isArea){startBaseLine=start.splice(start.length-6,6);endBaseLine=end.splice(end.length-6,6);}
if(shift){end=[].concat(end).splice(0,numParams).concat(end);elem.shift=false;}
if(start.length){endLength=end.length;while(start.length<endLength){slice=[].concat(start).splice(start.length-numParams,numParams);if(bezier){slice[numParams-6]=slice[numParams-2];slice[numParams-5]=slice[numParams-1];}
start=start.concat(slice);}}
if(startBaseLine){start=start.concat(startBaseLine);end=end.concat(endBaseLine);}
return[start,end];},step:function(start,end,pos,complete){var ret=[],i=start.length,startVal;if(pos===1){ret=complete;}else if(i===end.length&&pos<1){while(i--){startVal=parseFloat(start[i]);ret[i]=isNaN(startVal)?start[i]:pos*(parseFloat(end[i]-startVal))+startVal;}}else{ret=end;}
return ret;}};function setTimeMethods(){var useUTC=defaultOptions.global.useUTC;makeTime=useUTC?Date.UTC:function(year,month,date,hours,minutes,seconds){return new Date(year,month,pick(date,1),pick(hours,0),pick(minutes,0),pick(seconds,0)).getTime();};getMinutes=useUTC?'getUTCMinutes':'getMinutes';getHours=useUTC?'getUTCHours':'getHours';getDay=useUTC?'getUTCDay':'getDay';getDate=useUTC?'getUTCDate':'getDate';getMonth=useUTC?'getUTCMonth':'getMonth';getFullYear=useUTC?'getUTCFullYear':'getFullYear';setMinutes=useUTC?'setUTCMinutes':'setMinutes';setHours=useUTC?'setUTCHours':'setHours';setDate=useUTC?'setUTCDate':'setDate';setMonth=useUTC?'setUTCMonth':'setMonth';setFullYear=useUTC?'setUTCFullYear':'setFullYear';}
function setOptions(options){defaultOptions=merge(defaultOptions,options);setTimeMethods();return defaultOptions;}
function getOptions(){return defaultOptions;}
function discardElement(element){if(!garbageBin){garbageBin=createElement(DIV);}
if(element){garbageBin.appendChild(element);}
garbageBin.innerHTML='';}
var
defaultLabelOptions={enabled:true,align:'center',x:0,y:15,style:{color:'#666',fontSize:'11px',lineHeight:'14px'}};defaultOptions={colors:['#4572A7','#AA4643','#89A54E','#80699B','#3D96AE','#DB843D','#92A8CD','#A47D7C','#B5CA92'],symbols:['circle','diamond','square','triangle','triangle-down'],lang:{loading:'Loading...',months:['January','February','March','April','May','June','July','August','September','October','November','December'],weekdays:['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'],decimalPoint:'.',resetZoom:'Reset zoom',resetZoomTitle:'Reset zoom level 1:1',thousandsSep:','},global:{useUTC:true},chart:{borderColor:'#4572A7',borderRadius:5,defaultSeriesType:'line',ignoreHiddenSeries:true,spacingTop:10,spacingRight:10,spacingBottom:15,spacingLeft:10,style:{fontFamily:'"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif',fontSize:'12px'},backgroundColor:'#FFFFFF',plotBorderColor:'#C0C0C0'},title:{text:'Chart title',align:'center',y:15,style:{color:'#3E576F',fontSize:'16px'}},subtitle:{text:'',align:'center',y:30,style:{color:'#6D869F'}},plotOptions:{line:{allowPointSelect:false,showCheckbox:false,animation:{duration:1000},events:{},lineWidth:2,shadow:true,marker:{enabled:true,lineWidth:0,radius:4,lineColor:'#FFFFFF',states:{hover:{},select:{fillColor:'#FFFFFF',lineColor:'#000000',lineWidth:2}}},point:{events:{}},dataLabels:merge(defaultLabelOptions,{enabled:false,y:-6,formatter:function(){return this.y;}}),showInLegend:true,states:{hover:{marker:{}},select:{marker:{}}},stickyTracking:true}},labels:{style:{position:ABSOLUTE,color:'#3E576F'}},legend:{enabled:true,align:'center',layout:'horizontal',labelFormatter:function(){return this.name;},borderWidth:1,borderColor:'#909090',borderRadius:5,shadow:false,style:{padding:'5px'},itemStyle:{cursor:'pointer',color:'#3E576F'},itemHoverStyle:{cursor:'pointer',color:'#000000'},itemHiddenStyle:{color:'#C0C0C0'},itemCheckboxStyle:{position:ABSOLUTE,width:'13px',height:'13px'},symbolWidth:16,symbolPadding:5,verticalAlign:'bottom',x:0,y:0},loading:{hideDuration:100,labelStyle:{fontWeight:'bold',position:RELATIVE,top:'1em'},showDuration:100,style:{position:ABSOLUTE,backgroundColor:'white',opacity:0.5,textAlign:'center'}},tooltip:{enabled:true,backgroundColor:'rgba(255, 255, 255, .85)',borderWidth:2,borderRadius:5,shadow:true,snap:hasTouch?25:10,style:{color:'#333333',fontSize:'12px',padding:'5px',whiteSpace:'nowrap'}},toolbar:{itemStyle:{color:'#4572A7',cursor:'pointer'}},credits:{enabled:true,text:'Highcharts.com',href:'http://www.highcharts.com',position:{align:'right',x:-10,verticalAlign:'bottom',y:-5},style:{cursor:'pointer',color:'#909090',fontSize:'10px'}}};var defaultXAxisOptions={dateTimeLabelFormats:{second:'%H:%M:%S',minute:'%H:%M',hour:'%H:%M',day:'%e. %b',week:'%e. %b',month:'%b \'%y',year:'%Y'},endOnTick:false,gridLineColor:'#C0C0C0',labels:defaultLabelOptions,lineColor:'#C0D0E0',lineWidth:1,max:null,min:null,minPadding:0.01,maxPadding:0.01,minorGridLineColor:'#E0E0E0',minorGridLineWidth:1,minorTickColor:'#A0A0A0',minorTickLength:2,minorTickPosition:'outside',startOfWeek:1,startOnTick:false,tickColor:'#C0D0E0',tickLength:5,tickmarkPlacement:'between',tickPixelInterval:100,tickPosition:'outside',tickWidth:1,title:{align:'middle',style:{color:'#6D869F',fontWeight:'bold'}},type:'linear'},defaultYAxisOptions=merge(defaultXAxisOptions,{endOnTick:true,gridLineWidth:1,tickPixelInterval:72,showLastLabel:true,labels:{align:'right',x:-8,y:3},lineWidth:0,maxPadding:0.05,minPadding:0.05,startOnTick:true,tickWidth:0,title:{rotation:270,text:'Y-values'},stackLabels:{enabled:false,formatter:function(){return this.total;},style:defaultLabelOptions.style}}),defaultLeftAxisOptions={labels:{align:'right',x:-8,y:null},title:{rotation:270}},defaultRightAxisOptions={labels:{align:'left',x:8,y:null},title:{rotation:90}},defaultBottomAxisOptions={labels:{align:'center',x:0,y:14},title:{rotation:0}},defaultTopAxisOptions=merge(defaultBottomAxisOptions,{labels:{y:-5}});var defaultPlotOptions=defaultOptions.plotOptions,defaultSeriesOptions=defaultPlotOptions.line;defaultPlotOptions.spline=merge(defaultSeriesOptions);defaultPlotOptions.scatter=merge(defaultSeriesOptions,{lineWidth:0,states:{hover:{lineWidth:0}}});defaultPlotOptions.area=merge(defaultSeriesOptions,{});defaultPlotOptions.areaspline=merge(defaultPlotOptions.area);defaultPlotOptions.column=merge(defaultSeriesOptions,{borderColor:'#FFFFFF',borderWidth:1,borderRadius:0,groupPadding:0.2,marker:null,pointPadding:0.1,minPointLength:0,states:{hover:{brightness:0.1,shadow:false},select:{color:'#C0C0C0',borderColor:'#000000',shadow:false}},dataLabels:{y:null,verticalAlign:null}});defaultPlotOptions.bar=merge(defaultPlotOptions.column,{dataLabels:{align:'left',x:5,y:0}});defaultPlotOptions.pie=merge(defaultSeriesOptions,{borderColor:'#FFFFFF',borderWidth:1,center:['50%','50%'],colorByPoint:true,dataLabels:{distance:30,enabled:true,formatter:function(){return this.point.name;},y:5},legendType:'point',marker:null,size:'75%',showInLegend:false,slicedOffset:10,states:{hover:{brightness:0.1,shadow:false}}});setTimeMethods();var Color=function(input){var rgba=[],result;function init(input){result=/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]?(?:\.[0-9]+)?)\s*\)/.exec(input);if(result){rgba=[pInt(result[1]),pInt(result[2]),pInt(result[3]),parseFloat(result[4],10)];}
else{result=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(input);if(result){rgba=[pInt(result[1],16),pInt(result[2],16),pInt(result[3],16),1];}}}
function get(format){var ret;if(rgba&&!isNaN(rgba[0])){if(format==='rgb'){ret='rgb('+rgba[0]+','+rgba[1]+','+rgba[2]+')';}else if(format==='a'){ret=rgba[3];}else{ret='rgba('+rgba.join(',')+')';}}else{ret=input;}
return ret;}
function brighten(alpha){if(isNumber(alpha)&&alpha!==0){var i;for(i=0;i<3;i++){rgba[i]+=pInt(alpha*255);if(rgba[i]<0){rgba[i]=0;}
if(rgba[i]>255){rgba[i]=255;}}}
return this;}
function setOpacity(alpha){rgba[3]=alpha;return this;}
init(input);return{get:get,brighten:brighten,setOpacity:setOpacity};};function SVGElement(){}
SVGElement.prototype={init:function(renderer,nodeName){this.element=doc.createElementNS(SVG_NS,nodeName);this.renderer=renderer;},animate:function(params,options,complete){var animOptions=pick(options,globalAnimation,true);if(animOptions){animOptions=merge(animOptions);if(complete){animOptions.complete=complete;}
animate(this,params,animOptions);}else{this.attr(params);if(complete){complete();}}},attr:function(hash,val){var key,value,i,child,element=this.element,nodeName=element.nodeName,renderer=this.renderer,skipAttr,shadows=this.shadows,hasSetSymbolSize,ret=this;if(isString(hash)&&defined(val)){key=hash;hash={};hash[key]=val;}
if(isString(hash)){key=hash;if(nodeName==='circle'){key={x:'cx',y:'cy'}[key]||key;}else if(key==='strokeWidth'){key='stroke-width';}
ret=attr(element,key)||this[key]||0;if(key!=='d'&&key!=='visibility'){ret=parseFloat(ret);}}else{for(key in hash){skipAttr=false;value=hash[key];if(key==='d'){if(value&&value.join){value=value.join(' ');}
if(/(NaN| {2}|^$)/.test(value)){value='M 0 0';}
this.d=value;}else if(key==='x'&&nodeName==='text'){for(i=0;i<element.childNodes.length;i++){child=element.childNodes[i];if(attr(child,'x')===attr(element,'x')){attr(child,'x',value);}}
if(this.rotation){attr(element,'transform','rotate('+this.rotation+' '+value+' '+
pInt(hash.y||attr(element,'y'))+')');}}else if(key==='fill'){value=renderer.color(value,element,key);}else if(nodeName==='circle'&&(key==='x'||key==='y')){key={x:'cx',y:'cy'}[key]||key;}else if(key==='translateX'||key==='translateY'||key==='rotation'||key==='verticalAlign'){this[key]=value;this.updateTransform();skipAttr=true;}else if(key==='stroke'){value=renderer.color(value,element,key);}else if(key==='dashstyle'){key='stroke-dasharray';value=value&&value.toLowerCase();if(value==='solid'){value=NONE;}else if(value){value=value.replace('shortdashdotdot','3,1,1,1,1,1,').replace('shortdashdot','3,1,1,1').replace('shortdot','1,1,').replace('shortdash','3,1,').replace('longdash','8,3,').replace(/dot/g,'1,3,').replace('dash','4,3,').replace(/,$/,'').split(',');i=value.length;while(i--){value[i]=pInt(value[i])*hash['stroke-width'];}
value=value.join(',');}}else if(key==='isTracker'){this[key]=value;}else if(key==='width'){value=pInt(value);}else if(key==='align'){key='text-anchor';value={left:'start',center:'middle',right:'end'}[value];}
if(key==='strokeWidth'){key='stroke-width';}
if(isWebKit&&key==='stroke-width'&&value===0){value=0.000001;}
if(this.symbolName&&/^(x|y|r|start|end|innerR)/.test(key)){if(!hasSetSymbolSize){this.symbolAttr(hash);hasSetSymbolSize=true;}
skipAttr=true;}
if(shadows&&/^(width|height|visibility|x|y|d)$/.test(key)){i=shadows.length;while(i--){attr(shadows[i],key,value);}}
if((key==='width'||key==='height')&&nodeName==='rect'&&value<0){value=0;}
if(key==='text'){this.textStr=value;if(this.added){renderer.buildText(this);}}else if(!skipAttr){attr(element,key,value);}}}
return ret;},symbolAttr:function(hash){var wrapper=this;each(['x','y','r','start','end','width','height','innerR'],function(key){wrapper[key]=pick(hash[key],wrapper[key]);});wrapper.attr({d:wrapper.renderer.symbols[wrapper.symbolName](mathRound(wrapper.x*2)/2,mathRound(wrapper.y*2)/2,wrapper.r,{start:wrapper.start,end:wrapper.end,width:wrapper.width,height:wrapper.height,innerR:wrapper.innerR})});},clip:function(clipRect){return this.attr('clip-path','url('+this.renderer.url+'#'+clipRect.id+')');},crisp:function(strokeWidth,x,y,width,height){var wrapper=this,key,attr={},values={},normalizer;strokeWidth=strokeWidth||wrapper.strokeWidth||0;normalizer=strokeWidth%2/2;values.x=mathFloor(x||wrapper.x||0)+normalizer;values.y=mathFloor(y||wrapper.y||0)+normalizer;values.width=mathFloor((width||wrapper.width||0)-2*normalizer);values.height=mathFloor((height||wrapper.height||0)-2*normalizer);values.strokeWidth=strokeWidth;for(key in values){if(wrapper[key]!==values[key]){wrapper[key]=attr[key]=values[key];}}
return attr;},css:function(styles){var elemWrapper=this,elem=elemWrapper.element,textWidth=styles&&styles.width&&elem.nodeName==='text',camelStyles=styles,n;if(styles&&styles.color){styles.fill=styles.color;}
styles=extend(elemWrapper.styles,styles);elemWrapper.styles=styles;if(defined(styles)){styles={};for(n in camelStyles){styles[hyphenate(n)]=camelStyles[n];}}
if(isIE&&!hasSVG){if(textWidth){delete styles.width;}
css(elemWrapper.element,styles);}else{elemWrapper.attr({style:serializeCSS(styles)});}
if(textWidth&&elemWrapper.added){elemWrapper.renderer.buildText(elemWrapper);}
return elemWrapper;},on:function(eventType,handler){var fn=handler;if(hasTouch&&eventType==='click'){eventType='touchstart';fn=function(e){e.preventDefault();handler();};}
this.element['on'+eventType]=fn;return this;},translate:function(x,y){return this.attr({translateX:x,translateY:y});},invert:function(){var wrapper=this;wrapper.inverted=true;wrapper.updateTransform();return wrapper;},updateTransform:function(){var wrapper=this,translateX=wrapper.translateX||0,translateY=wrapper.translateY||0,inverted=wrapper.inverted,rotation=wrapper.rotation,transform=[];if(inverted){translateX+=wrapper.attr('width');translateY+=wrapper.attr('height');}
if(translateX||translateY){transform.push('translate('+translateX+','+translateY+')');}
if(inverted){transform.push('rotate(90) scale(-1,1)');}else if(rotation){transform.push('rotate('+rotation+' '+wrapper.x+' '+wrapper.y+')');}
if(transform.length){attr(wrapper.element,'transform',transform.join(' '));}},toFront:function(){var element=this.element;element.parentNode.appendChild(element);return this;},align:function(alignOptions,alignByTranslate,box){var elemWrapper=this;if(!alignOptions){alignOptions=elemWrapper.alignOptions;alignByTranslate=elemWrapper.alignByTranslate;}else{elemWrapper.alignOptions=alignOptions;elemWrapper.alignByTranslate=alignByTranslate;if(!box){elemWrapper.renderer.alignedObjects.push(elemWrapper);}}
box=pick(box,elemWrapper.renderer);var align=alignOptions.align,vAlign=alignOptions.verticalAlign,x=(box.x||0)+(alignOptions.x||0),y=(box.y||0)+(alignOptions.y||0),attribs={};if(/^(right|center)$/.test(align)){x+=(box.width-(alignOptions.width||0))/{right:1,center:2}[align];}
attribs[alignByTranslate?'translateX':'x']=mathRound(x);if(/^(bottom|middle)$/.test(vAlign)){y+=(box.height-(alignOptions.height||0))/({bottom:1,middle:2}[vAlign]||1);}
attribs[alignByTranslate?'translateY':'y']=mathRound(y);elemWrapper[elemWrapper.placed?'animate':'attr'](attribs);elemWrapper.placed=true;elemWrapper.alignAttr=attribs;return elemWrapper;},getBBox:function(){var bBox,width,height,rotation=this.rotation,rad=rotation*deg2rad;try{bBox=extend({},this.element.getBBox());}catch(e){bBox={width:0,height:0};}
width=bBox.width;height=bBox.height;if(rotation){bBox.width=mathAbs(height*mathSin(rad))+mathAbs(width*mathCos(rad));bBox.height=mathAbs(height*mathCos(rad))+mathAbs(width*mathSin(rad));}
return bBox;},show:function(){return this.attr({visibility:VISIBLE});},hide:function(){return this.attr({visibility:HIDDEN});},add:function(parent){var renderer=this.renderer,parentWrapper=parent||renderer,parentNode=parentWrapper.element||renderer.box,childNodes=parentNode.childNodes,element=this.element,zIndex=attr(element,'zIndex'),otherElement,otherZIndex,i;this.parentInverted=parent&&parent.inverted;if(this.textStr!==undefined){renderer.buildText(this);}
if(zIndex){parentWrapper.handleZ=true;zIndex=pInt(zIndex);}
if(parentWrapper.handleZ){for(i=0;i<childNodes.length;i++){otherElement=childNodes[i];otherZIndex=attr(otherElement,'zIndex');if(otherElement!==element&&(pInt(otherZIndex)>zIndex||(!defined(zIndex)&&defined(otherZIndex)))){parentNode.insertBefore(element,otherElement);return this;}}}
parentNode.appendChild(element);this.added=true;return this;},destroy:function(){var wrapper=this,element=wrapper.element||{},shadows=wrapper.shadows,parentNode=element.parentNode,key;element.onclick=element.onmouseout=element.onmouseover=element.onmousemove=null;stop(wrapper);if(parentNode){parentNode.removeChild(element);}
if(shadows){each(shadows,function(shadow){parentNode=shadow.parentNode;if(parentNode){parentNode.removeChild(shadow);}});}
erase(wrapper.renderer.alignedObjects,wrapper);for(key in wrapper){delete wrapper[key];}
return null;},empty:function(){var element=this.element,childNodes=element.childNodes,i=childNodes.length;while(i--){element.removeChild(childNodes[i]);}},shadow:function(apply,group){var shadows=[],i,shadow,element=this.element,transform=this.parentInverted?'(-1,-1)':'(1,1)';if(apply){for(i=1;i<=3;i++){shadow=element.cloneNode(0);attr(shadow,{'isShadow':'true','stroke':'rgb(0, 0, 0)','stroke-opacity':0.05*i,'stroke-width':7-2*i,'transform':'translate'+transform,'fill':NONE});if(group){group.element.appendChild(shadow);}else{element.parentNode.insertBefore(shadow,element);}
shadows.push(shadow);}
this.shadows=shadows;}
return this;}};var SVGRenderer=function(){this.init.apply(this,arguments);};SVGRenderer.prototype={Element:SVGElement,init:function(container,width,height,forExport){var renderer=this,loc=location,boxWrapper;boxWrapper=renderer.createElement('svg').attr({xmlns:SVG_NS,version:'1.1'});container.appendChild(boxWrapper.element);renderer.box=boxWrapper.element;renderer.boxWrapper=boxWrapper;renderer.alignedObjects=[];renderer.url=isIE?'':loc.href.replace(/#.*?$/,'');renderer.defs=this.createElement('defs').add();renderer.forExport=forExport;renderer.setSize(width,height,false);},createElement:function(nodeName){var wrapper=new this.Element();wrapper.init(this,nodeName);return wrapper;},buildText:function(wrapper){var textNode=wrapper.element,lines=pick(wrapper.textStr,'').toString().replace(/<(b|strong)>/g,'<span style="font-weight:bold">').replace(/<(i|em)>/g,'<span style="font-style:italic">').replace(/<a/g,'<span').replace(/<\/(b|strong|i|em|a)>/g,'</span>').split(/<br.*?>/g),childNodes=textNode.childNodes,styleRegex=/style="([^"]+)"/,hrefRegex=/href="([^"]+)"/,parentX=attr(textNode,'x'),textStyles=wrapper.styles,reverse=isFirefox&&textStyles&&textStyles['-hc-direction']==='rtl'&&!this.forExport&&pInt(userAgent.split('Firefox/')[1])<4,arr,width=textStyles&&pInt(textStyles.width),textLineHeight=textStyles&&textStyles['line-height'],lastLine,GET_COMPUTED_STYLE='getComputedStyle',i=childNodes.length;while(i--){textNode.removeChild(childNodes[i]);}
if(width&&!wrapper.added){this.box.appendChild(textNode);}
each(lines,function(line,lineNo){var spans,spanNo=0,lineHeight;line=line.replace(/<span/g,'|||<span').replace(/<\/span>/g,'</span>|||');spans=line.split('|||');each(spans,function(span){if(span!==''||spans.length===1){var attributes={},tspan=doc.createElementNS(SVG_NS,'tspan');if(styleRegex.test(span)){attr(tspan,'style',span.match(styleRegex)[1].replace(/(;| |^)color([ :])/,'$1fill$2'));}
if(hrefRegex.test(span)){attr(tspan,'onclick','location.href=\"'+span.match(hrefRegex)[1]+'\"');css(tspan,{cursor:'pointer'});}
span=(span.replace(/<(.|\n)*?>/g,'')||' ').replace(/&lt;/g,'<').replace(/&gt;/g,'>');if(reverse){arr=[];i=span.length;while(i--){arr.push(span.charAt(i));}
span=arr.join('');}
tspan.appendChild(doc.createTextNode(span));if(!spanNo){attributes.x=parentX;}else{attributes.dx=3;}
if(!spanNo){if(lineNo){if(!hasSVG&&wrapper.renderer.forExport){css(tspan,{display:'block'});}
lineHeight=win[GET_COMPUTED_STYLE]&&win[GET_COMPUTED_STYLE](lastLine,null).getPropertyValue('line-height');if(!lineHeight||isNaN(lineHeight)){lineHeight=textLineHeight||lastLine.offsetHeight||18;}
attr(tspan,'dy',lineHeight);}
lastLine=tspan;}
attr(tspan,attributes);textNode.appendChild(tspan);spanNo++;if(width){var words=span.replace(/-/g,'- ').split(' '),tooLong,actualWidth,rest=[];while(words.length||rest.length){actualWidth=textNode.getBBox().width;tooLong=actualWidth>width;if(!tooLong||words.length===1){words=rest;rest=[];if(words.length){tspan=doc.createElementNS(SVG_NS,'tspan');attr(tspan,{dy:textLineHeight||16,x:parentX});textNode.appendChild(tspan);if(actualWidth>width){width=actualWidth;}}}else{tspan.removeChild(tspan.firstChild);rest.unshift(words.pop());}
if(words.length){tspan.appendChild(doc.createTextNode(words.join(' ').replace(/- /g,'-')));}}}}});});},crispLine:function(points,width){if(points[1]===points[4]){points[1]=points[4]=mathRound(points[1])+(width%2/2);}
if(points[2]===points[5]){points[2]=points[5]=mathRound(points[2])+(width%2/2);}
return points;},path:function(path){return this.createElement('path').attr({d:path,fill:NONE});},circle:function(x,y,r){var attr=isObject(x)?x:{x:x,y:y,r:r};return this.createElement('circle').attr(attr);},arc:function(x,y,r,innerR,start,end){if(isObject(x)){y=x.y;r=x.r;innerR=x.innerR;start=x.start;end=x.end;x=x.x;}
return this.symbol('arc',x||0,y||0,r||0,{innerR:innerR||0,start:start||0,end:end||0});},rect:function(x,y,width,height,r,strokeWidth){if(isObject(x)){y=x.y;width=x.width;height=x.height;r=x.r;strokeWidth=x.strokeWidth;x=x.x;}
var wrapper=this.createElement('rect').attr({rx:r,ry:r,fill:NONE});return wrapper.attr(wrapper.crisp(strokeWidth,x,y,mathMax(width,0),mathMax(height,0)));},setSize:function(width,height,animate){var renderer=this,alignedObjects=renderer.alignedObjects,i=alignedObjects.length;renderer.width=width;renderer.height=height;renderer.boxWrapper[pick(animate,true)?'animate':'attr']({width:width,height:height});while(i--){alignedObjects[i].align();}},g:function(name){return this.createElement('g').attr(defined(name)&&{'class':PREFIX+name});},image:function(src,x,y,width,height){var attribs={preserveAspectRatio:NONE},elemWrapper;if(arguments.length>1){extend(attribs,{x:x,y:y,width:width,height:height});}
elemWrapper=this.createElement('image').attr(attribs);if(elemWrapper.element.setAttributeNS){elemWrapper.element.setAttributeNS('http://www.w3.org/1999/xlink','href',src);}else{elemWrapper.element.setAttribute('hc-svg-href',src);}
return elemWrapper;},symbol:function(symbol,x,y,radius,options){var obj,symbolFn=this.symbols[symbol],path=symbolFn&&symbolFn(mathRound(x),mathRound(y),radius,options),imageRegex=/^url\((.*?)\)$/,imageSrc,imageSize;if(path){obj=this.path(path);extend(obj,{symbolName:symbol,x:x,y:y,r:radius});if(options){extend(obj,options);}}else if(imageRegex.test(symbol)){var centerImage=function(img,size){img.attr({width:size[0],height:size[1]}).translate(-mathRound(size[0]/2),-mathRound(size[1]/2));};imageSrc=symbol.match(imageRegex)[1];imageSize=symbolSizes[imageSrc];obj=this.image(imageSrc).attr({x:x,y:y});if(imageSize){centerImage(obj,imageSize);}else{obj.attr({width:0,height:0});createElement('img',{onload:function(){var img=this;centerImage(obj,symbolSizes[imageSrc]=[img.width,img.height]);},src:imageSrc});}}else{obj=this.circle(x,y,radius);}
return obj;},symbols:{'square':function(x,y,radius){var len=0.707*radius;return[M,x-len,y-len,L,x+len,y-len,x+len,y+len,x-len,y+len,'Z'];},'triangle':function(x,y,radius){return[M,x,y-1.33*radius,L,x+radius,y+0.67*radius,x-radius,y+0.67*radius,'Z'];},'triangle-down':function(x,y,radius){return[M,x,y+1.33*radius,L,x-radius,y-0.67*radius,x+radius,y-0.67*radius,'Z'];},'diamond':function(x,y,radius){return[M,x,y-radius,L,x+radius,y,x,y+radius,x-radius,y,'Z'];},'arc':function(x,y,radius,options){var start=options.start,end=options.end-0.000001,innerRadius=options.innerR,cosStart=mathCos(start),sinStart=mathSin(start),cosEnd=mathCos(end),sinEnd=mathSin(end),longArc=options.end-start<mathPI?0:1;return[M,x+radius*cosStart,y+radius*sinStart,'A',radius,radius,0,longArc,1,x+radius*cosEnd,y+radius*sinEnd,L,x+innerRadius*cosEnd,y+innerRadius*sinEnd,'A',innerRadius,innerRadius,0,longArc,0,x+innerRadius*cosStart,y+innerRadius*sinStart,'Z'];}},clipRect:function(x,y,width,height){var wrapper,id=PREFIX+idCounter++,clipPath=this.createElement('clipPath').attr({id:id}).add(this.defs);wrapper=this.rect(x,y,width,height,0).add(clipPath);wrapper.id=id;return wrapper;},color:function(color,elem,prop){var colorObject,regexRgba=/^rgba/;if(color&&color.linearGradient){var renderer=this,strLinearGradient='linearGradient',linearGradient=color[strLinearGradient],id=PREFIX+idCounter++,gradientObject,stopColor,stopOpacity;gradientObject=renderer.createElement(strLinearGradient).attr({id:id,gradientUnits:'userSpaceOnUse',x1:linearGradient[0],y1:linearGradient[1],x2:linearGradient[2],y2:linearGradient[3]}).add(renderer.defs);each(color.stops,function(stop){if(regexRgba.test(stop[1])){colorObject=Color(stop[1]);stopColor=colorObject.get('rgb');stopOpacity=colorObject.get('a');}else{stopColor=stop[1];stopOpacity=1;}
renderer.createElement('stop').attr({offset:stop[0],'stop-color':stopColor,'stop-opacity':stopOpacity}).add(gradientObject);});return'url('+this.url+'#'+id+')';}else if(regexRgba.test(color)){colorObject=Color(color);attr(elem,prop+'-opacity',colorObject.get('a'));return colorObject.get('rgb');}else{return color;}},text:function(str,x,y){var defaultChartStyle=defaultOptions.chart.style,wrapper;x=mathRound(pick(x,0));y=mathRound(pick(y,0));wrapper=this.createElement('text').attr({x:x,y:y,text:str}).css({'font-family':defaultChartStyle.fontFamily,'font-size':defaultChartStyle.fontSize});wrapper.x=x;wrapper.y=y;return wrapper;}};Renderer=SVGRenderer;var VMLRenderer;if(!hasSVG){var VMLElement=extendClass(SVGElement,{init:function(renderer,nodeName){var markup=['<',nodeName,' filled="f" stroked="f"'],style=['position: ',ABSOLUTE,';'];if(nodeName==='shape'||nodeName===DIV){style.push('left:0;top:0;width:10px;height:10px;');}
if(docMode8){style.push('visibility: ',nodeName===DIV?HIDDEN:VISIBLE);}
markup.push(' style="',style.join(''),'"/>');if(nodeName){markup=nodeName===DIV||nodeName==='span'||nodeName==='img'?markup.join(''):renderer.prepVML(markup);this.element=createElement(markup);}
this.renderer=renderer;},add:function(parent){var wrapper=this,renderer=wrapper.renderer,element=wrapper.element,box=renderer.box,inverted=parent&&parent.inverted,parentNode=parent?parent.element||parent:box;if(inverted){renderer.invertChild(element,parentNode);}
if(docMode8&&parentNode.gVis===HIDDEN){css(element,{visibility:HIDDEN});}
parentNode.appendChild(element);wrapper.added=true;if(wrapper.alignOnAdd){wrapper.updateTransform();}
return wrapper;},attr:function(hash,val){var key,value,i,element=this.element||{},elemStyle=element.style,nodeName=element.nodeName,renderer=this.renderer,symbolName=this.symbolName,childNodes,hasSetSymbolSize,shadows=this.shadows,skipAttr,ret=this;if(isString(hash)&&defined(val)){key=hash;hash={};hash[key]=val;}
if(isString(hash)){key=hash;if(key==='strokeWidth'||key==='stroke-width'){ret=this.strokeweight;}else{ret=this[key];}}else{for(key in hash){value=hash[key];skipAttr=false;if(symbolName&&/^(x|y|r|start|end|width|height|innerR)/.test(key)){if(!hasSetSymbolSize){this.symbolAttr(hash);hasSetSymbolSize=true;}
skipAttr=true;}else if(key==='d'){value=value||[];this.d=value.join(' ');i=value.length;var convertedPath=[];while(i--){if(isNumber(value[i])){convertedPath[i]=mathRound(value[i]*10)-5;}
else if(value[i]==='Z'){convertedPath[i]='x';}
else{convertedPath[i]=value[i];}}
value=convertedPath.join(' ')||'x';element.path=value;if(shadows){i=shadows.length;while(i--){shadows[i].path=value;}}
skipAttr=true;}else if(key==='zIndex'||key==='visibility'){if(docMode8&&key==='visibility'&&nodeName==='DIV'){element.gVis=value;childNodes=element.childNodes;i=childNodes.length;while(i--){css(childNodes[i],{visibility:value});}
if(value===VISIBLE){value=null;}}
if(value){elemStyle[key]=value;}
skipAttr=true;}else if(/^(width|height)$/.test(key)){if(this.updateClipping){this[key]=value;this.updateClipping();}else{elemStyle[key]=value;}
skipAttr=true;}else if(/^(x|y)$/.test(key)){this[key]=value;if(element.tagName==='SPAN'){this.updateTransform();}else{elemStyle[{x:'left',y:'top'}[key]]=value;}}else if(key==='class'){element.className=value;}else if(key==='stroke'){value=renderer.color(value,element,key);key='strokecolor';}else if(key==='stroke-width'||key==='strokeWidth'){element.stroked=value?true:false;key='strokeweight';this[key]=value;if(isNumber(value)){value+=PX;}}else if(key==='dashstyle'){var strokeElem=element.getElementsByTagName('stroke')[0]||createElement(renderer.prepVML(['<stroke/>']),null,null,element);strokeElem[key]=value||'solid';this.dashstyle=value;skipAttr=true;}else if(key==='fill'){if(nodeName==='SPAN'){elemStyle.color=value;}else{element.filled=value!==NONE?true:false;value=renderer.color(value,element,key);key='fillcolor';}}else if(key==='translateX'||key==='translateY'||key==='rotation'||key==='align'){if(key==='align'){key='textAlign';}
this[key]=value;this.updateTransform();skipAttr=true;}
else if(key==='text'){this.bBox=null;element.innerHTML=value;skipAttr=true;}
if(shadows&&key==='visibility'){i=shadows.length;while(i--){shadows[i].style[key]=value;}}
if(!skipAttr){if(docMode8){element[key]=value;}else{attr(element,key,value);}}}}
return ret;},clip:function(clipRect){var wrapper=this,clipMembers=clipRect.members;clipMembers.push(wrapper);wrapper.destroyClip=function(){erase(clipMembers,wrapper);};return wrapper.css(clipRect.getCSS(wrapper.inverted));},css:function(styles){var wrapper=this,element=wrapper.element,textWidth=styles&&element.tagName==='SPAN'&&styles.width;if(textWidth){delete styles.width;wrapper.textWidth=textWidth;wrapper.updateTransform();}
wrapper.styles=extend(wrapper.styles,styles);css(wrapper.element,styles);return wrapper;},destroy:function(){var wrapper=this;if(wrapper.destroyClip){wrapper.destroyClip();}
SVGElement.prototype.destroy.apply(wrapper);},empty:function(){var element=this.element,childNodes=element.childNodes,i=childNodes.length,node;while(i--){node=childNodes[i];node.parentNode.removeChild(node);}},getBBox:function(){var wrapper=this,element=wrapper.element,bBox=wrapper.bBox;if(!bBox){if(element.nodeName==='text'){element.style.position=ABSOLUTE;}
bBox=wrapper.bBox={x:element.offsetLeft,y:element.offsetTop,width:element.offsetWidth,height:element.offsetHeight};}
return bBox;},on:function(eventType,handler){this.element['on'+eventType]=function(){var evt=win.event;evt.target=evt.srcElement;handler(evt);};return this;},updateTransform:function(hash){if(!this.added){this.alignOnAdd=true;return;}
var wrapper=this,elem=wrapper.element,translateX=wrapper.translateX||0,translateY=wrapper.translateY||0,x=wrapper.x||0,y=wrapper.y||0,align=wrapper.textAlign||'left',alignCorrection={left:0,center:0.5,right:1}[align],nonLeft=align&&align!=='left';if(translateX||translateY){wrapper.css({marginLeft:translateX,marginTop:translateY});}
if(wrapper.inverted){each(elem.childNodes,function(child){wrapper.renderer.invertChild(child,elem);});}
if(elem.tagName==='SPAN'){var width,height,rotation=wrapper.rotation,lineHeight,radians=0,costheta=1,sintheta=0,quad,textWidth=pInt(wrapper.textWidth),xCorr=wrapper.xCorr||0,yCorr=wrapper.yCorr||0,currentTextTransform=[rotation,align,elem.innerHTML,wrapper.textWidth].join(',');if(currentTextTransform!==wrapper.cTT){if(defined(rotation)){radians=rotation*deg2rad;costheta=mathCos(radians);sintheta=mathSin(radians);css(elem,{filter:rotation?['progid:DXImageTransform.Microsoft.Matrix(M11=',costheta,', M12=',-sintheta,', M21=',sintheta,', M22=',costheta,', sizingMethod=\'auto expand\')'].join(''):NONE});}
width=elem.offsetWidth;height=elem.offsetHeight;if(width>textWidth){css(elem,{width:textWidth+PX,display:'block',whiteSpace:'normal'});width=textWidth;}
lineHeight=mathRound((pInt(elem.style.fontSize)||12)*1.2);xCorr=costheta<0&&-width;yCorr=sintheta<0&&-height;quad=costheta*sintheta<0;xCorr+=sintheta*lineHeight*(quad?1-alignCorrection:alignCorrection);yCorr-=costheta*lineHeight*(rotation?(quad?alignCorrection:1-alignCorrection):1);if(nonLeft){xCorr-=width*alignCorrection*(costheta<0?-1:1);if(rotation){yCorr-=height*alignCorrection*(sintheta<0?-1:1);}
css(elem,{textAlign:align});}
wrapper.xCorr=xCorr;wrapper.yCorr=yCorr;}
css(elem,{left:x+xCorr,top:y+yCorr});wrapper.cTT=currentTextTransform;}},shadow:function(apply,group){var shadows=[],i,element=this.element,renderer=this.renderer,shadow,elemStyle=element.style,markup,path=element.path;if(path&&typeof path.value!=='string'){path='x';}
if(apply){for(i=1;i<=3;i++){markup=['<shape isShadow="true" strokeweight="',(7-2*i),'" filled="false" path="',path,'" coordsize="100,100" style="',element.style.cssText,'" />'];shadow=createElement(renderer.prepVML(markup),null,{left:pInt(elemStyle.left)+1,top:pInt(elemStyle.top)+1});markup=['<stroke color="black" opacity="',(0.05*i),'"/>'];createElement(renderer.prepVML(markup),null,null,shadow);if(group){group.element.appendChild(shadow);}else{element.parentNode.insertBefore(shadow,element);}
shadows.push(shadow);}
this.shadows=shadows;}
return this;}});VMLRenderer=function(){this.init.apply(this,arguments);};VMLRenderer.prototype=merge(SVGRenderer.prototype,{Element:VMLElement,isIE8:userAgent.indexOf('MSIE 8.0')>-1,init:function(container,width,height){var renderer=this,boxWrapper;renderer.alignedObjects=[];boxWrapper=renderer.createElement(DIV);container.appendChild(boxWrapper.element);renderer.box=boxWrapper.element;renderer.boxWrapper=boxWrapper;renderer.setSize(width,height,false);if(!doc.namespaces.hcv){doc.namespaces.add('hcv','urn:schemas-microsoft-com:vml');doc.createStyleSheet().cssText='hcv\\:fill, hcv\\:path, hcv\\:shape, hcv\\:stroke'+'{ behavior:url(#default#VML); display: inline-block; } ';}},clipRect:function(x,y,width,height){var clipRect=this.createElement();return extend(clipRect,{members:[],left:x,top:y,width:width,height:height,getCSS:function(inverted){var rect=this,top=rect.top,left=rect.left,right=left+rect.width,bottom=top+rect.height,ret={clip:'rect('+
mathRound(inverted?left:top)+'px,'+
mathRound(inverted?bottom:right)+'px,'+
mathRound(inverted?right:bottom)+'px,'+
mathRound(inverted?top:left)+'px)'};if(!inverted&&docMode8){extend(ret,{width:right+PX,height:bottom+PX});}
return ret;},updateClipping:function(){each(clipRect.members,function(member){member.css(clipRect.getCSS(member.inverted));});}});},color:function(color,elem,prop){var colorObject,regexRgba=/^rgba/,markup;if(color&&color.linearGradient){var stopColor,stopOpacity,linearGradient=color.linearGradient,angle,color1,opacity1,color2,opacity2;each(color.stops,function(stop,i){if(regexRgba.test(stop[1])){colorObject=Color(stop[1]);stopColor=colorObject.get('rgb');stopOpacity=colorObject.get('a');}else{stopColor=stop[1];stopOpacity=1;}
if(!i){color1=stopColor;opacity1=stopOpacity;}else{color2=stopColor;opacity2=stopOpacity;}});angle=90-math.atan((linearGradient[3]-linearGradient[1])/(linearGradient[2]-linearGradient[0]))*180/mathPI;markup=['<',prop,' colors="0% ',color1,',100% ',color2,'" angle="',angle,'" opacity="',opacity2,'" o:opacity2="',opacity1,'" type="gradient" focus="100%" />'];createElement(this.prepVML(markup),null,null,elem);}else if(regexRgba.test(color)&&elem.tagName!=='IMG'){colorObject=Color(color);markup=['<',prop,' opacity="',colorObject.get('a'),'"/>'];createElement(this.prepVML(markup),null,null,elem);return colorObject.get('rgb');}else{return color;}},prepVML:function(markup){var vmlStyle='display:inline-block;behavior:url(#default#VML);',isIE8=this.isIE8;markup=markup.join('');if(isIE8){markup=markup.replace('/>',' xmlns="urn:schemas-microsoft-com:vml" />');if(markup.indexOf('style="')===-1){markup=markup.replace('/>',' style="'+vmlStyle+'" />');}else{markup=markup.replace('style="','style="'+vmlStyle);}}else{markup=markup.replace('<','<hcv:');}
return markup;},text:function(str,x,y){var defaultChartStyle=defaultOptions.chart.style;return this.createElement('span').attr({text:str,x:mathRound(x),y:mathRound(y)}).css({whiteSpace:'nowrap',fontFamily:defaultChartStyle.fontFamily,fontSize:defaultChartStyle.fontSize});},path:function(path){return this.createElement('shape').attr({coordsize:'100 100',d:path});},circle:function(x,y,r){return this.symbol('circle').attr({x:x,y:y,r:r});},g:function(name){var wrapper,attribs;if(name){attribs={'className':PREFIX+name,'class':PREFIX+name};}
wrapper=this.createElement(DIV).attr(attribs);return wrapper;},image:function(src,x,y,width,height){var obj=this.createElement('img').attr({src:src});if(arguments.length>1){obj.css({left:x,top:y,width:width,height:height});}
return obj;},rect:function(x,y,width,height,r,strokeWidth){if(isObject(x)){y=x.y;width=x.width;height=x.height;r=x.r;strokeWidth=x.strokeWidth;x=x.x;}
var wrapper=this.symbol('rect');wrapper.r=r;return wrapper.attr(wrapper.crisp(strokeWidth,x,y,mathMax(width,0),mathMax(height,0)));},invertChild:function(element,parentNode){var parentStyle=parentNode.style;css(element,{flip:'x',left:pInt(parentStyle.width)-10,top:pInt(parentStyle.height)-10,rotation:-90});},symbols:{arc:function(x,y,radius,options){var start=options.start,end=options.end,cosStart=mathCos(start),sinStart=mathSin(start),cosEnd=mathCos(end),sinEnd=mathSin(end),innerRadius=options.innerR,circleCorrection=0.07/radius,innerCorrection=(innerRadius&&0.1/innerRadius)||0;if(end-start===0){return['x'];}else if(2*mathPI-end+start<circleCorrection){cosEnd=-circleCorrection;}else if(end-start<innerCorrection){cosEnd=mathCos(start+innerCorrection);}
return['wa',x-radius,y-radius,x+radius,y+radius,x+radius*cosStart,y+radius*sinStart,x+radius*cosEnd,y+radius*sinEnd,'at',x-innerRadius,y-innerRadius,x+innerRadius,y+innerRadius,x+innerRadius*cosEnd,y+innerRadius*sinEnd,x+innerRadius*cosStart,y+innerRadius*sinStart,'x','e'];},circle:function(x,y,r){return['wa',x-r,y-r,x+r,y+r,x+r,y,x+r,y,'e'];},rect:function(left,top,r,options){if(!defined(options)){return[];}
var width=options.width,height=options.height,right=left+width,bottom=top+height;r=mathMin(r,width,height);return[M,left+r,top,L,right-r,top,'wa',right-2*r,top,right,top+2*r,right-r,top,right,top+r,L,right,bottom-r,'wa',right-2*r,bottom-2*r,right,bottom,right,bottom-r,right-r,bottom,L,left+r,bottom,'wa',left,bottom-2*r,left+2*r,bottom,left+r,bottom,left,bottom-r,L,left,top+r,'wa',left,top,left+2*r,top+2*r,left,top+r,left+r,top,'x','e'];}}});Renderer=VMLRenderer;}
function Chart(options,callback){defaultXAxisOptions=merge(defaultXAxisOptions,defaultOptions.xAxis);defaultYAxisOptions=merge(defaultYAxisOptions,defaultOptions.yAxis);defaultOptions.xAxis=defaultOptions.yAxis=null;options=merge(defaultOptions,options);var optionsChart=options.chart,optionsMargin=optionsChart.margin,margin=isObject(optionsMargin)?optionsMargin:[optionsMargin,optionsMargin,optionsMargin,optionsMargin],optionsMarginTop=pick(optionsChart.marginTop,margin[0]),optionsMarginRight=pick(optionsChart.marginRight,margin[1]),optionsMarginBottom=pick(optionsChart.marginBottom,margin[2]),optionsMarginLeft=pick(optionsChart.marginLeft,margin[3]),spacingTop=optionsChart.spacingTop,spacingRight=optionsChart.spacingRight,spacingBottom=optionsChart.spacingBottom,spacingLeft=optionsChart.spacingLeft,spacingBox,chartTitleOptions,chartSubtitleOptions,plotTop,marginRight,marginBottom,plotLeft,axisOffset,renderTo,renderToClone,container,containerId,containerWidth,containerHeight,chartWidth,chartHeight,oldChartWidth,oldChartHeight,chartBackground,plotBackground,plotBGImage,plotBorder,chart=this,chartEvents=optionsChart.events,runChartClick=chartEvents&&!!chartEvents.click,eventType,isInsidePlot,tooltip,mouseIsDown,loadingDiv,loadingSpan,loadingShown,plotHeight,plotWidth,tracker,trackerGroup,placeTrackerGroup,legend,legendWidth,legendHeight,chartPosition,hasCartesianSeries=optionsChart.showAxes,isResizing=0,axes=[],maxTicks,series=[],inverted,renderer,tooltipTick,tooltipInterval,hoverX,drawChartBox,getMargins,resetMargins,setChartSize,resize,zoom,zoomOut;function Axis(chart,options){var isXAxis=options.isX,opposite=options.opposite,horiz=inverted?!isXAxis:isXAxis,side=horiz?(opposite?0:2):(opposite?1:3),stacks={};options=merge(isXAxis?defaultXAxisOptions:defaultYAxisOptions,[defaultTopAxisOptions,defaultRightAxisOptions,defaultBottomAxisOptions,defaultLeftAxisOptions][side],options);var axis=this,type=options.type,isDatetimeAxis=type==='datetime',isLog=type==='logarithmic',offset=options.offset||0,xOrY=isXAxis?'x':'y',axisLength,transA,oldTransA,transB=horiz?plotLeft:marginBottom,translate,getPlotLinePath,axisGroup,gridGroup,axisLine,dataMin,dataMax,associatedSeries,userMin,userMax,max=null,min=null,oldMin,oldMax,minPadding=options.minPadding,maxPadding=options.maxPadding,isLinked=defined(options.linkedTo),ignoreMinPadding,ignoreMaxPadding,usePercentage,events=options.events,eventType,plotLinesAndBands=[],tickInterval,minorTickInterval,magnitude,tickPositions,ticks={},minorTicks={},alternateBands={},tickAmount,labelOffset,axisTitleMargin,dateTimeLabelFormat,categories=options.categories,labelFormatter=options.labels.formatter||function(){var value=this.value,ret;if(dateTimeLabelFormat){ret=dateFormat(dateTimeLabelFormat,value);}else if(tickInterval%1000000===0){ret=(value/1000000)+'M';}else if(tickInterval%1000===0){ret=(value/1000)+'k';}else if(!categories&&value>=1000){ret=numberFormat(value,0);}else{ret=value;}
return ret;},staggerLines=horiz&&options.labels.staggerLines,reversed=options.reversed,tickmarkOffset=(categories&&options.tickmarkPlacement==='between')?0.5:0;function Tick(pos,minor){var tick=this;tick.pos=pos;tick.minor=minor;tick.isNew=true;if(!minor){tick.addLabel();}}
Tick.prototype={addLabel:function(){var pos=this.pos,labelOptions=options.labels,str,withLabel=!((pos===min&&!pick(options.showFirstLabel,1))||(pos===max&&!pick(options.showLastLabel,0))),width=(categories&&horiz&&categories.length&&!labelOptions.step&&!labelOptions.staggerLines&&!labelOptions.rotation&&plotWidth/categories.length)||(!horiz&&plotWidth/2),css,label=this.label;str=labelFormatter.call({isFirst:pos===tickPositions[0],isLast:pos===tickPositions[tickPositions.length-1],dateTimeLabelFormat:dateTimeLabelFormat,value:(categories&&categories[pos]?categories[pos]:pos)});css=width&&{width:mathMax(1,mathRound(width-2*(labelOptions.padding||10)))+PX};css=extend(css,labelOptions.style);if(label===UNDEFINED){this.label=defined(str)&&withLabel&&labelOptions.enabled?renderer.text(str,0,0).attr({align:labelOptions.align,rotation:labelOptions.rotation}).css(css).add(axisGroup):null;}else if(label){label.attr({text:str}).css(css);}},getLabelSize:function(){var label=this.label;return label?((this.labelBBox=label.getBBox()))[horiz?'height':'width']:0;},render:function(index,old){var tick=this,major=!tick.minor,label=tick.label,pos=tick.pos,labelOptions=options.labels,gridLine=tick.gridLine,gridLineWidth=major?options.gridLineWidth:options.minorGridLineWidth,gridLineColor=major?options.gridLineColor:options.minorGridLineColor,dashStyle=major?options.gridLineDashStyle:options.minorGridLineDashStyle,gridLinePath,mark=tick.mark,markPath,tickLength=major?options.tickLength:options.minorTickLength,tickWidth=major?options.tickWidth:(options.minorTickWidth||0),tickColor=major?options.tickColor:options.minorTickColor,tickPosition=major?options.tickPosition:options.minorTickPosition,step=labelOptions.step,cHeight=(old&&oldChartHeight)||chartHeight,attribs,x,y;x=horiz?translate(pos+tickmarkOffset,null,null,old)+transB:plotLeft+offset+(opposite?((old&&oldChartWidth)||chartWidth)-marginRight-plotLeft:0);y=horiz?cHeight-marginBottom+offset-(opposite?plotHeight:0):cHeight-translate(pos+tickmarkOffset,null,null,old)-transB;if(gridLineWidth){gridLinePath=getPlotLinePath(pos+tickmarkOffset,gridLineWidth,old);if(gridLine===UNDEFINED){attribs={stroke:gridLineColor,'stroke-width':gridLineWidth};if(dashStyle){attribs.dashstyle=dashStyle;}
tick.gridLine=gridLine=gridLineWidth?renderer.path(gridLinePath).attr(attribs).add(gridGroup):null;}
if(gridLine&&gridLinePath){gridLine.animate({d:gridLinePath});}}
if(tickWidth){if(tickPosition==='inside'){tickLength=-tickLength;}
if(opposite){tickLength=-tickLength;}
markPath=renderer.crispLine([M,x,y,L,x+(horiz?0:-tickLength),y+(horiz?tickLength:0)],tickWidth);if(mark){mark.animate({d:markPath});}else{tick.mark=renderer.path(markPath).attr({stroke:tickColor,'stroke-width':tickWidth}).add(axisGroup);}}
if(label&&!isNaN(x)){x=x+labelOptions.x-(tickmarkOffset&&horiz?tickmarkOffset*transA*(reversed?-1:1):0);y=y+labelOptions.y-(tickmarkOffset&&!horiz?tickmarkOffset*transA*(reversed?1:-1):0);if(!defined(labelOptions.y)){y+=pInt(label.styles.lineHeight)*0.9-label.getBBox().height/2;}
if(staggerLines){y+=(index/(step||1)%staggerLines)*16;}
if(step){label[index%step?'hide':'show']();}
label[tick.isNew?'attr':'animate']({x:x,y:y});}
tick.isNew=false;},destroy:function(){var tick=this,n;for(n in tick){if(tick[n]&&tick[n].destroy){tick[n].destroy();}}}};function PlotLineOrBand(options){var plotLine=this;if(options){plotLine.options=options;plotLine.id=options.id;}
return plotLine;}
PlotLineOrBand.prototype={render:function(){var plotLine=this,options=plotLine.options,optionsLabel=options.label,label=plotLine.label,width=options.width,to=options.to,toPath,from=options.from,dashStyle=options.dashStyle,svgElem=plotLine.svgElem,path=[],addEvent,eventType,xs,ys,x,y,color=options.color,zIndex=options.zIndex,events=options.events,attribs;if(width){path=getPlotLinePath(options.value,width);attribs={stroke:color,'stroke-width':width};if(dashStyle){attribs.dashstyle=dashStyle;}}
else if(defined(from)&&defined(to)){from=mathMax(from,min);to=mathMin(to,max);toPath=getPlotLinePath(to);path=getPlotLinePath(from);if(path&&toPath){path.push(toPath[4],toPath[5],toPath[1],toPath[2]);}else{path=null;}
attribs={fill:color};}else{return;}
if(defined(zIndex)){attribs.zIndex=zIndex;}
if(svgElem){if(path){svgElem.animate({d:path},null,svgElem.onGetPath);}else{svgElem.hide();svgElem.onGetPath=function(){svgElem.show();};}}else if(path&&path.length){plotLine.svgElem=svgElem=renderer.path(path).attr(attribs).add();if(events){addEvent=function(eventType){svgElem.on(eventType,function(e){events[eventType].apply(plotLine,[e]);});};for(eventType in events){addEvent(eventType);}}}
if(optionsLabel&&defined(optionsLabel.text)&&path&&path.length&&plotWidth>0&&plotHeight>0){optionsLabel=merge({align:horiz&&toPath&&'center',x:horiz?!toPath&&4:10,verticalAlign:!horiz&&toPath&&'middle',y:horiz?toPath?16:10:toPath?6:-4,rotation:horiz&&!toPath&&90},optionsLabel);if(!label){plotLine.label=label=renderer.text(optionsLabel.text,0,0).attr({align:optionsLabel.textAlign||optionsLabel.align,rotation:optionsLabel.rotation,zIndex:zIndex}).css(optionsLabel.style).add();}
xs=[path[1],path[4],pick(path[6],path[1])];ys=[path[2],path[5],pick(path[7],path[2])];x=mathMin.apply(math,xs);y=mathMin.apply(math,ys);label.align(optionsLabel,false,{x:x,y:y,width:mathMax.apply(math,xs)-x,height:mathMax.apply(math,ys)-y});label.show();}else if(label){label.hide();}
return plotLine;},destroy:function(){var obj=this,n;for(n in obj){if(obj[n]&&obj[n].destroy){obj[n].destroy();}
delete obj[n];}
erase(plotLinesAndBands,obj);}};function StackItem(options,isNegative,x){var stackItem=this;stackItem.isNegative=isNegative;stackItem.options=options;stackItem.x=x;stackItem.alignOptions={align:options.align||(inverted?(isNegative?'left':'right'):'center'),verticalAlign:options.verticalAlign||(inverted?'middle':(isNegative?'bottom':'top')),y:pick(options.y,inverted?4:(isNegative?14:-6)),x:pick(options.x,inverted?(isNegative?-6:6):0)};stackItem.textAlign=options.textAlign||(inverted?(isNegative?'right':'left'):'center');}
StackItem.prototype={setTotal:function(total){this.total=total;this.cum=total;},render:function(group){var stackItem=this,str=stackItem.options.formatter.call(stackItem);if(stackItem.label){stackItem.label.attr({text:str,visibility:HIDDEN});}else{stackItem.label=chart.renderer.text(str,0,0).css(stackItem.options.style).attr({align:stackItem.textAlign,rotation:stackItem.options.rotation,visibility:HIDDEN}).add(group);}},setOffset:function(xOffset,xWidth){var stackItem=this,neg=stackItem.isNegative,y=axis.translate(stackItem.total),yZero=axis.translate(0),h=mathAbs(y-yZero),x=chart.xAxis[0].translate(stackItem.x)+xOffset,plotHeight=chart.plotHeight,stackBox={x:inverted?(neg?y:y-h):x,y:inverted?plotHeight-x-xWidth:(neg?(plotHeight-y-h):plotHeight-y),width:inverted?h:xWidth,height:inverted?xWidth:h};if(stackItem.label){stackItem.label.align(stackItem.alignOptions,null,stackBox).attr({visibility:VISIBLE});}}};function getSeriesExtremes(){var posStack=[],negStack=[],run;dataMin=dataMax=null;associatedSeries=[];each(series,function(serie){run=false;each(['xAxis','yAxis'],function(strAxis){if(serie.isCartesian&&((strAxis==='xAxis'&&isXAxis)||(strAxis==='yAxis'&&!isXAxis))&&((serie.options[strAxis]===options.index)||(serie.options[strAxis]===UNDEFINED&&options.index===0))){serie[strAxis]=axis;associatedSeries.push(serie);run=true;}});if(!serie.visible&&optionsChart.ignoreHiddenSeries){run=false;}
if(run){var stacking,posPointStack,negPointStack,stackKey,negKey;if(!isXAxis){stacking=serie.options.stacking;usePercentage=stacking==='percent';if(stacking){stackKey=serie.type+pick(serie.options.stack,'');negKey='-'+stackKey;serie.stackKey=stackKey;posPointStack=posStack[stackKey]||[];posStack[stackKey]=posPointStack;negPointStack=negStack[negKey]||[];negStack[negKey]=negPointStack;}
if(usePercentage){dataMin=0;dataMax=99;}}
if(serie.isCartesian){each(serie.data,function(point,i){var pointX=point.x,pointY=point.y,isNegative=pointY<0,pointStack=isNegative?negPointStack:posPointStack,key=isNegative?negKey:stackKey,totalPos,pointLow;if(dataMin===null){dataMin=dataMax=point[xOrY];}
if(isXAxis){if(pointX>dataMax){dataMax=pointX;}else if(pointX<dataMin){dataMin=pointX;}}
else if(defined(pointY)){if(stacking){pointStack[pointX]=defined(pointStack[pointX])?pointStack[pointX]+pointY:pointY;}
totalPos=pointStack?pointStack[pointX]:pointY;pointLow=pick(point.low,totalPos);if(!usePercentage){if(totalPos>dataMax){dataMax=totalPos;}else if(pointLow<dataMin){dataMin=pointLow;}}
if(stacking){if(!stacks[key]){stacks[key]={};}
if(!stacks[key][pointX]){stacks[key][pointX]=new StackItem(options.stackLabels,isNegative,pointX);}
stacks[key][pointX].setTotal(totalPos);}}});if(/(area|column|bar)/.test(serie.type)&&!isXAxis){var threshold=0;if(dataMin>=threshold){dataMin=threshold;ignoreMinPadding=true;}else if(dataMax<threshold){dataMax=threshold;ignoreMaxPadding=true;}}}}});}
translate=function(val,backwards,cvsCoord,old,handleLog){var sign=1,cvsOffset=0,localA=old?oldTransA:transA,localMin=old?oldMin:min,returnValue;if(!localA){localA=transA;}
if(cvsCoord){sign*=-1;cvsOffset=axisLength;}
if(reversed){sign*=-1;cvsOffset-=sign*axisLength;}
if(backwards){if(reversed){val=axisLength-val;}
returnValue=val/localA+localMin;if(isLog&&handleLog){returnValue=lin2log(returnValue);}}else{if(isLog&&handleLog){val=log2lin(val);}
returnValue=sign*(val-localMin)*localA+cvsOffset;}
return returnValue;};getPlotLinePath=function(value,lineWidth,old){var x1,y1,x2,y2,translatedValue=translate(value,null,null,old),cHeight=(old&&oldChartHeight)||chartHeight,cWidth=(old&&oldChartWidth)||chartWidth,skip;x1=x2=mathRound(translatedValue+transB);y1=y2=mathRound(cHeight-translatedValue-transB);if(isNaN(translatedValue)){skip=true;}else if(horiz){y1=plotTop;y2=cHeight-marginBottom;if(x1<plotLeft||x1>plotLeft+plotWidth){skip=true;}}else{x1=plotLeft;x2=cWidth-marginRight;if(y1<plotTop||y1>plotTop+plotHeight){skip=true;}}
return skip?null:renderer.crispLine([M,x1,y1,L,x2,y2],lineWidth||0);};function normalizeTickInterval(interval,multiples){var normalized,i;magnitude=multiples?1:math.pow(10,mathFloor(math.log(interval)/math.LN10));normalized=interval/magnitude;if(!multiples){multiples=[1,2,2.5,5,10];if(options.allowDecimals===false||isLog){if(magnitude===1){multiples=[1,2,5,10];}else if(magnitude<=0.1){multiples=[1/magnitude];}}}
for(i=0;i<multiples.length;i++){interval=multiples[i];if(normalized<=(multiples[i]+(multiples[i+1]||multiples[i]))/2){break;}}
interval*=magnitude;return interval;}
function setDateTimeTickPositions(){tickPositions=[];var i,useUTC=defaultOptions.global.useUTC,oneSecond=1000/timeFactor,oneMinute=60000/timeFactor,oneHour=3600000/timeFactor,oneDay=24*3600000/timeFactor,oneWeek=7*24*3600000/timeFactor,oneMonth=30*24*3600000/timeFactor,oneYear=31556952000/timeFactor,units=[['second',oneSecond,[1,2,5,10,15,30]],['minute',oneMinute,[1,2,5,10,15,30]],['hour',oneHour,[1,2,3,4,6,8,12]],['day',oneDay,[1,2]],['week',oneWeek,[1,2]],['month',oneMonth,[1,2,3,4,6]],['year',oneYear,null]],unit=units[6],interval=unit[1],multiples=unit[2];for(i=0;i<units.length;i++){unit=units[i];interval=unit[1];multiples=unit[2];if(units[i+1]){var lessThan=(interval*multiples[multiples.length-1]+
units[i+1][1])/2;if(tickInterval<=lessThan){break;}}}
if(interval===oneYear&&tickInterval<5*interval){multiples=[1,2,5];}
var multitude=normalizeTickInterval(tickInterval/interval,multiples),minYear,minDate=new Date(min*timeFactor);minDate.setMilliseconds(0);if(interval>=oneSecond){minDate.setSeconds(interval>=oneMinute?0:multitude*mathFloor(minDate.getSeconds()/multitude));}
if(interval>=oneMinute){minDate[setMinutes](interval>=oneHour?0:multitude*mathFloor(minDate[getMinutes]()/multitude));}
if(interval>=oneHour){minDate[setHours](interval>=oneDay?0:multitude*mathFloor(minDate[getHours]()/multitude));}
if(interval>=oneDay){minDate[setDate](interval>=oneMonth?1:multitude*mathFloor(minDate[getDate]()/multitude));}
if(interval>=oneMonth){minDate[setMonth](interval>=oneYear?0:multitude*mathFloor(minDate[getMonth]()/multitude));minYear=minDate[getFullYear]();}
if(interval>=oneYear){minYear-=minYear%multitude;minDate[setFullYear](minYear);}
if(interval===oneWeek){minDate[setDate](minDate[getDate]()-minDate[getDay]()+
options.startOfWeek);}
i=1;minYear=minDate[getFullYear]();var time=minDate.getTime()/timeFactor,minMonth=minDate[getMonth](),minDateDate=minDate[getDate]();while(time<max&&i<plotWidth){tickPositions.push(time);if(interval===oneYear){time=makeTime(minYear+i*multitude,0)/timeFactor;}else if(interval===oneMonth){time=makeTime(minYear,minMonth+i*multitude)/timeFactor;}else if(!useUTC&&(interval===oneDay||interval===oneWeek)){time=makeTime(minYear,minMonth,minDateDate+
i*multitude*(interval===oneDay?1:7));}else{time+=interval*multitude;}
i++;}
tickPositions.push(time);dateTimeLabelFormat=options.dateTimeLabelFormats[unit[0]];}
function correctFloat(num){var invMag,ret=num;magnitude=pick(magnitude,math.pow(10,mathFloor(math.log(tickInterval)/math.LN10)));if(magnitude<1){invMag=mathRound(1/magnitude)*10;ret=mathRound(num*invMag)/invMag;}
return ret;}
function setLinearTickPositions(){var i,roundedMin=correctFloat(mathFloor(min/tickInterval)*tickInterval),roundedMax=correctFloat(mathCeil(max/tickInterval)*tickInterval);tickPositions=[];i=correctFloat(roundedMin);while(i<=roundedMax){tickPositions.push(i);i=correctFloat(i+tickInterval);}}
function setTickPositions(secondPass){var length,catPad,linkedParent,linkedParentExtremes,tickIntervalOption=options.tickInterval,tickPixelIntervalOption=options.tickPixelInterval,maxZoom=options.maxZoom||(isXAxis&&!defined(options.min)&&!defined(options.max)?mathMin(chart.smallestInterval*5,dataMax-dataMin):null),zoomOffset;axisLength=horiz?plotWidth:plotHeight;if(isLinked){linkedParent=chart[isXAxis?'xAxis':'yAxis'][options.linkedTo];linkedParentExtremes=linkedParent.getExtremes();min=pick(linkedParentExtremes.min,linkedParentExtremes.dataMin);max=pick(linkedParentExtremes.max,linkedParentExtremes.dataMax);}
else{min=pick(userMin,options.min,dataMin);max=pick(userMax,options.max,dataMax);}
if(isLog){min=log2lin(min);max=log2lin(max);}
if(max-min<maxZoom){zoomOffset=(maxZoom-max+min)/2;min=mathMax(min-zoomOffset,pick(options.min,min-zoomOffset),dataMin);max=mathMin(min+maxZoom,pick(options.max,min+maxZoom),dataMax);}
if(!categories&&!usePercentage&&!isLinked&&defined(min)&&defined(max)){length=(max-min)||1;if(!defined(options.min)&&!defined(userMin)&&minPadding&&(dataMin<0||!ignoreMinPadding)){min-=length*minPadding;}
if(!defined(options.max)&&!defined(userMax)&&maxPadding&&(dataMax>0||!ignoreMaxPadding)){max+=length*maxPadding;}}
if(min===max){tickInterval=1;}else if(isLinked&&!tickIntervalOption&&tickPixelIntervalOption===linkedParent.options.tickPixelInterval){tickInterval=linkedParent.tickInterval;}else{tickInterval=pick(tickIntervalOption,categories?1:(max-min)*tickPixelIntervalOption/axisLength);}
if(!isDatetimeAxis&&!defined(options.tickInterval)){tickInterval=normalizeTickInterval(tickInterval);}
axis.tickInterval=tickInterval;minorTickInterval=options.minorTickInterval==='auto'&&tickInterval?tickInterval/5:options.minorTickInterval;if(isDatetimeAxis){setDateTimeTickPositions();}else{setLinearTickPositions();}
if(!isLinked){if(categories||(isXAxis&&chart.hasColumn)){catPad=(categories?1:tickInterval)*0.5;if(categories||!defined(pick(options.min,userMin))){min-=catPad;}
if(categories||!defined(pick(options.max,userMax))){max+=catPad;}}
var roundedMin=tickPositions[0],roundedMax=tickPositions[tickPositions.length-1];if(options.startOnTick){min=roundedMin;}else if(min>roundedMin){tickPositions.shift();}
if(options.endOnTick){max=roundedMax;}else if(max<roundedMax){tickPositions.pop();}
if(!maxTicks){maxTicks={x:0,y:0};}
if(!isDatetimeAxis&&tickPositions.length>maxTicks[xOrY]){maxTicks[xOrY]=tickPositions.length;}}}
function adjustTickAmount(){if(maxTicks&&!isDatetimeAxis&&!categories&&!isLinked){var oldTickAmount=tickAmount,calculatedTickAmount=tickPositions.length;tickAmount=maxTicks[xOrY];if(calculatedTickAmount<tickAmount){while(tickPositions.length<tickAmount){tickPositions.push(correctFloat(tickPositions[tickPositions.length-1]+tickInterval));}
transA*=(calculatedTickAmount-1)/(tickAmount-1);max=tickPositions[tickPositions.length-1];}
if(defined(oldTickAmount)&&tickAmount!==oldTickAmount){axis.isDirty=true;}}}
function setScale(){var type,i;oldMin=min;oldMax=max;getSeriesExtremes();setTickPositions();oldTransA=transA;transA=axisLength/((max-min)||1);if(!isXAxis){for(type in stacks){for(i in stacks[type]){stacks[type][i].cum=stacks[type][i].total;}}}
if(!axis.isDirty){axis.isDirty=(min!==oldMin||max!==oldMax);}}
function setExtremes(newMin,newMax,redraw,animation){redraw=pick(redraw,true);fireEvent(axis,'setExtremes',{min:newMin,max:newMax},function(){userMin=newMin;userMax=newMax;if(redraw){chart.redraw(animation);}});}
function getExtremes(){return{min:min,max:max,dataMin:dataMin,dataMax:dataMax,userMin:userMin,userMax:userMax};}
function getThreshold(threshold){if(min>threshold){threshold=min;}else if(max<threshold){threshold=max;}
return translate(threshold,0,1);}
function addPlotBandOrLine(options){var obj=new PlotLineOrBand(options).render();plotLinesAndBands.push(obj);return obj;}
function getOffset(){var hasData=associatedSeries.length&&defined(min)&&defined(max),titleOffset=0,titleMargin=0,axisTitleOptions=options.title,labelOptions=options.labels,directionFactor=[-1,1,1,-1][side],n;if(!axisGroup){axisGroup=renderer.g('axis').attr({zIndex:7}).add();gridGroup=renderer.g('grid').attr({zIndex:1}).add();}
labelOffset=0;if(hasData||isLinked){each(tickPositions,function(pos){if(!ticks[pos]){ticks[pos]=new Tick(pos);}else{ticks[pos].addLabel();}
if(side===0||side===2||{1:'left',3:'right'}[side]===labelOptions.align){labelOffset=mathMax(ticks[pos].getLabelSize(),labelOffset);}});if(staggerLines){labelOffset+=(staggerLines-1)*16;}}else{for(n in ticks){ticks[n].destroy();delete ticks[n];}}
if(axisTitleOptions&&axisTitleOptions.text){if(!axis.axisTitle){axis.axisTitle=renderer.text(axisTitleOptions.text,0,0).attr({zIndex:7,rotation:axisTitleOptions.rotation||0,align:axisTitleOptions.textAlign||{low:'left',middle:'center',high:'right'}[axisTitleOptions.align]}).css(axisTitleOptions.style).add();}
titleOffset=axis.axisTitle.getBBox()[horiz?'height':'width'];titleMargin=pick(axisTitleOptions.margin,horiz?5:10);}
offset=directionFactor*(options.offset||axisOffset[side]);axisTitleMargin=labelOffset+
(side!==2&&labelOffset&&directionFactor*options.labels[horiz?'y':'x'])+
titleMargin;axisOffset[side]=mathMax(axisOffset[side],axisTitleMargin+titleOffset+directionFactor*offset);}
function render(){var axisTitleOptions=options.title,stackLabelOptions=options.stackLabels,alternateGridColor=options.alternateGridColor,lineWidth=options.lineWidth,lineLeft,lineTop,linePath,hasRendered=chart.hasRendered,slideInTicks=hasRendered&&defined(oldMin)&&!isNaN(oldMin),hasData=associatedSeries.length&&defined(min)&&defined(max);axisLength=horiz?plotWidth:plotHeight;transA=axisLength/((max-min)||1);transB=horiz?plotLeft:marginBottom;if(hasData||isLinked){if(minorTickInterval&&!categories){var pos=min+(tickPositions[0]-min)%minorTickInterval;for(pos;pos<=max;pos+=minorTickInterval){if(!minorTicks[pos]){minorTicks[pos]=new Tick(pos,true);}
if(slideInTicks&&minorTicks[pos].isNew){minorTicks[pos].render(null,true);}
minorTicks[pos].isActive=true;minorTicks[pos].render();}}
each(tickPositions,function(pos,i){if(!isLinked||(pos>=min&&pos<=max)){if(slideInTicks&&ticks[pos].isNew){ticks[pos].render(i,true);}
ticks[pos].isActive=true;ticks[pos].render(i);}});if(alternateGridColor){each(tickPositions,function(pos,i){if(i%2===0&&pos<max){if(!alternateBands[pos]){alternateBands[pos]=new PlotLineOrBand();}
alternateBands[pos].options={from:pos,to:tickPositions[i+1]!==UNDEFINED?tickPositions[i+1]:max,color:alternateGridColor};alternateBands[pos].render();alternateBands[pos].isActive=true;}});}
if(!hasRendered){each((options.plotLines||[]).concat(options.plotBands||[]),function(plotLineOptions){plotLinesAndBands.push(new PlotLineOrBand(plotLineOptions).render());});}}
each([ticks,minorTicks,alternateBands],function(coll){var pos;for(pos in coll){if(!coll[pos].isActive){coll[pos].destroy();delete coll[pos];}else{coll[pos].isActive=false;}}});if(lineWidth){lineLeft=plotLeft+(opposite?plotWidth:0)+offset;lineTop=chartHeight-marginBottom-(opposite?plotHeight:0)+offset;linePath=renderer.crispLine([M,horiz?plotLeft:lineLeft,horiz?lineTop:plotTop,L,horiz?chartWidth-marginRight:lineLeft,horiz?lineTop:chartHeight-marginBottom],lineWidth);if(!axisLine){axisLine=renderer.path(linePath).attr({stroke:options.lineColor,'stroke-width':lineWidth,zIndex:7}).add();}else{axisLine.animate({d:linePath});}}
if(axis.axisTitle){var margin=horiz?plotLeft:plotTop,fontSize=pInt(axisTitleOptions.style.fontSize||12),alongAxis={low:margin+(horiz?0:axisLength),middle:margin+axisLength/2,high:margin+(horiz?axisLength:0)}[axisTitleOptions.align],offAxis=(horiz?plotTop+plotHeight:plotLeft)+
(horiz?1:-1)*(opposite?-1:1)*axisTitleMargin+
(side===2?fontSize:0);axis.axisTitle[hasRendered?'animate':'attr']({x:horiz?alongAxis:offAxis+(opposite?plotWidth:0)+offset+
(axisTitleOptions.x||0),y:horiz?offAxis-(opposite?plotHeight:0)+offset:alongAxis+(axisTitleOptions.y||0)});}
if(stackLabelOptions&&stackLabelOptions.enabled){var stackKey,oneStack,stackCategory,stackTotalGroup=axis.stackTotalGroup;if(!stackTotalGroup){axis.stackTotalGroup=stackTotalGroup=renderer.g('stack-labels').attr({visibility:VISIBLE,zIndex:6}).translate(plotLeft,plotTop).add();}
for(stackKey in stacks){oneStack=stacks[stackKey];for(stackCategory in oneStack){oneStack[stackCategory].render(stackTotalGroup);}}}
axis.isDirty=false;}
function removePlotBandOrLine(id){var i=plotLinesAndBands.length;while(i--){if(plotLinesAndBands[i].id===id){plotLinesAndBands[i].destroy();}}}
function redraw(){if(tracker.resetTracker){tracker.resetTracker();}
render();each(plotLinesAndBands,function(plotLine){plotLine.render();});each(associatedSeries,function(series){series.isDirty=true;});}
function setCategories(newCategories,doRedraw){axis.categories=categories=newCategories;each(associatedSeries,function(series){series.translate();series.setTooltipPoints(true);});axis.isDirty=true;if(pick(doRedraw,true)){chart.redraw();}}
if(inverted&&isXAxis&&reversed===UNDEFINED){reversed=true;}
extend(axis,{addPlotBand:addPlotBandOrLine,addPlotLine:addPlotBandOrLine,adjustTickAmount:adjustTickAmount,categories:categories,getExtremes:getExtremes,getPlotLinePath:getPlotLinePath,getThreshold:getThreshold,isXAxis:isXAxis,options:options,plotLinesAndBands:plotLinesAndBands,getOffset:getOffset,render:render,setCategories:setCategories,setExtremes:setExtremes,setScale:setScale,setTickPositions:setTickPositions,translate:translate,redraw:redraw,removePlotBand:removePlotBandOrLine,removePlotLine:removePlotBandOrLine,reversed:reversed,stacks:stacks});for(eventType in events){addEvent(axis,eventType,events[eventType]);}
setScale();}
function Toolbar(chart){var buttons={};function add(id,text,title,fn){if(!buttons[id]){var button=renderer.text(text,0,0).css(options.toolbar.itemStyle).align({align:'right',x:-marginRight-20,y:plotTop+30}).on('click',fn).attr({align:'right',zIndex:20}).add();buttons[id]=button;}}
function remove(id){discardElement(buttons[id].element);buttons[id]=null;}
return{add:add,remove:remove};}
function Tooltip(options){var currentSeries,borderWidth=options.borderWidth,crosshairsOptions=options.crosshairs,crosshairs=[],style=options.style,shared=options.shared,padding=pInt(style.padding),boxOffLeft=borderWidth+padding,tooltipIsHidden=true,boxWidth,boxHeight,currentX=0,currentY=0;style.padding=0;var group=renderer.g('tooltip').attr({zIndex:8}).add(),box=renderer.rect(boxOffLeft,boxOffLeft,0,0,options.borderRadius,borderWidth).attr({fill:options.backgroundColor,'stroke-width':borderWidth}).add(group).shadow(options.shadow),label=renderer.text('',padding+boxOffLeft,pInt(style.fontSize)+padding+boxOffLeft).attr({zIndex:1}).css(style).add(group);group.hide();function defaultFormatter(){var pThis=this,items=pThis.points||splat(pThis),xAxis=items[0].series.xAxis,x=pThis.x,isDateTime=xAxis&&xAxis.options.type==='datetime',useHeader=isString(x)||isDateTime,series,s;s=useHeader?['<span style="font-size: 10px">'+
(isDateTime?dateFormat('%A, %b %e, %Y',x):x)+'</span>']:[];each(items,function(item){s.push(item.point.tooltipFormatter(useHeader));});return s.join('<br/>');}
function move(finalX,finalY){currentX=tooltipIsHidden?finalX:(2*currentX+finalX)/3;currentY=tooltipIsHidden?finalY:(currentY+finalY)/2;group.translate(currentX,currentY);if(mathAbs(finalX-currentX)>1||mathAbs(finalY-currentY)>1){tooltipTick=function(){move(finalX,finalY);};}else{tooltipTick=null;}}
function hide(){if(!tooltipIsHidden){var hoverPoints=chart.hoverPoints;group.hide();each(crosshairs,function(crosshair){if(crosshair){crosshair.hide();}});if(hoverPoints){each(hoverPoints,function(point){point.setState();});}
chart.hoverPoints=null;tooltipIsHidden=true;}}
function refresh(point){var x,y,boxX,boxY,show,bBox,plotX,plotY=0,textConfig={},text,pointConfig=[],tooltipPos=point.tooltipPos,formatter=options.formatter||defaultFormatter,hoverPoints=chart.hoverPoints;if(shared){if(hoverPoints){each(hoverPoints,function(point){point.setState();});}
chart.hoverPoints=point;each(point,function(item,i){item.setState(HOVER_STATE);plotY+=item.plotY;pointConfig.push(item.getLabelConfig());});plotX=point[0].plotX;plotY=mathRound(plotY)/point.length;textConfig={x:point[0].category};textConfig.points=pointConfig;point=point[0];}else{textConfig=point.getLabelConfig();}
text=formatter.call(textConfig);currentSeries=point.series;plotX=shared?plotX:point.plotX;plotY=shared?plotY:point.plotY;x=mathRound(tooltipPos?tooltipPos[0]:(inverted?plotWidth-plotY:plotX));y=mathRound(tooltipPos?tooltipPos[1]:(inverted?plotHeight-plotX:plotY));show=shared||!point.series.isCartesian||isInsidePlot(x,y);if(text===false||!show){hide();}else{if(tooltipIsHidden){group.show();tooltipIsHidden=false;}
label.attr({text:text});bBox=label.getBBox();boxWidth=bBox.width+2*padding;boxHeight=bBox.height+2*padding;box.attr({width:boxWidth,height:boxHeight,stroke:options.borderColor||point.color||currentSeries.color||'#606060'});boxX=x-boxWidth+plotLeft-25;boxY=y-boxHeight+plotTop+10;if(boxX<7){boxX=7;boxY-=30;}
if(boxY<5){boxY=5;}else if(boxY+boxHeight>chartHeight){boxY=chartHeight-boxHeight-5;}
move(mathRound(boxX-boxOffLeft),mathRound(boxY-boxOffLeft));}
if(crosshairsOptions){crosshairsOptions=splat(crosshairsOptions);var path,i=crosshairsOptions.length,attribs,axis;while(i--){axis=point.series[i?'yAxis':'xAxis'];if(crosshairsOptions[i]&&axis){path=axis.getPlotLinePath(point[i?'y':'x'],1);if(crosshairs[i]){crosshairs[i].attr({d:path,visibility:VISIBLE});}else{attribs={'stroke-width':crosshairsOptions[i].width||1,stroke:crosshairsOptions[i].color||'#C0C0C0',zIndex:2};if(crosshairsOptions[i].dashStyle){attribs.dashstyle=crosshairsOptions[i].dashStyle;}
crosshairs[i]=renderer.path(path).attr(attribs).add();}}}}}
return{shared:shared,refresh:refresh,hide:hide};}
function MouseTracker(chart,options){var mouseDownX,mouseDownY,hasDragged,selectionMarker,zoomType=optionsChart.zoomType,zoomX=/x/.test(zoomType),zoomY=/y/.test(zoomType),zoomHor=(zoomX&&!inverted)||(zoomY&&inverted),zoomVert=(zoomY&&!inverted)||(zoomX&&inverted);function normalizeMouseEvent(e){var ePos,pageZoomFix=isWebKit&&doc.width/doc.documentElement.clientWidth-1,chartPosLeft,chartPosTop,chartX,chartY;e=e||win.event;if(!e.target){e.target=e.srcElement;}
ePos=e.touches?e.touches.item(0):e;if(e.type!=='mousemove'||win.opera||pageZoomFix){chartPosition=getPosition(container);chartPosLeft=chartPosition.left;chartPosTop=chartPosition.top;}
if(isIE){chartX=e.x;chartY=e.y;}else{if(ePos.layerX===UNDEFINED){chartX=ePos.pageX-chartPosLeft;chartY=ePos.pageY-chartPosTop;}else{chartX=e.layerX;chartY=e.layerY;}}
if(pageZoomFix){chartX+=mathRound((pageZoomFix+1)*chartPosLeft-chartPosLeft);chartY+=mathRound((pageZoomFix+1)*chartPosTop-chartPosTop);}
return extend(e,{chartX:chartX,chartY:chartY});}
function getMouseCoordinates(e){var coordinates={xAxis:[],yAxis:[]};each(axes,function(axis,i){var translate=axis.translate,isXAxis=axis.isXAxis,isHorizontal=inverted?!isXAxis:isXAxis;coordinates[isXAxis?'xAxis':'yAxis'].push({axis:axis,value:translate(isHorizontal?e.chartX-plotLeft:plotHeight-e.chartY+plotTop,true)});});return coordinates;}
function onmousemove(e){var point,points,hoverPoint=chart.hoverPoint,hoverSeries=chart.hoverSeries,i,j,distance=chartWidth,index=inverted?e.chartY:e.chartX-plotLeft;if(tooltip&&options.shared){points=[];i=series.length;for(j=0;j<i;j++){if(series[j].visible&&series[j].tooltipPoints.length){point=series[j].tooltipPoints[index];point._dist=mathAbs(index-point.plotX);distance=mathMin(distance,point._dist);points.push(point);}}
i=points.length;while(i--){if(points[i]._dist>distance){points.splice(i,1);}}
if(points.length&&(points[0].plotX!==hoverX)){tooltip.refresh(points);hoverX=points[0].plotX;}}
if(hoverSeries&&hoverSeries.tracker){point=hoverSeries.tooltipPoints[index];if(point&&point!==hoverPoint){point.onMouseOver();}}}
function resetTracker(){var hoverSeries=chart.hoverSeries,hoverPoint=chart.hoverPoint;if(hoverPoint){hoverPoint.onMouseOut();}
if(hoverSeries){hoverSeries.onMouseOut();}
if(tooltip){tooltip.hide();}
hoverX=null;}
function drop(){if(selectionMarker){var selectionData={xAxis:[],yAxis:[]},selectionBox=selectionMarker.getBBox(),selectionLeft=selectionBox.x-plotLeft,selectionTop=selectionBox.y-plotTop;if(hasDragged){each(axes,function(axis,i){var translate=axis.translate,isXAxis=axis.isXAxis,isHorizontal=inverted?!isXAxis:isXAxis,selectionMin=translate(isHorizontal?selectionLeft:plotHeight-selectionTop-selectionBox.height,true,0,0,1),selectionMax=translate(isHorizontal?selectionLeft+selectionBox.width:plotHeight-selectionTop,true,0,0,1);selectionData[isXAxis?'xAxis':'yAxis'].push({axis:axis,min:mathMin(selectionMin,selectionMax),max:mathMax(selectionMin,selectionMax)});});fireEvent(chart,'selection',selectionData,zoom);}
selectionMarker=selectionMarker.destroy();}
chart.mouseIsDown=mouseIsDown=hasDragged=false;removeEvent(doc,hasTouch?'touchend':'mouseup',drop);}
function setDOMEvents(){var lastWasOutsidePlot=true;container.onmousedown=function(e){e=normalizeMouseEvent(e);chart.mouseIsDown=mouseIsDown=true;mouseDownX=e.chartX;mouseDownY=e.chartY;addEvent(doc,hasTouch?'touchend':'mouseup',drop);};var mouseMove=function(e){if(e&&e.touches&&e.touches.length>1){return;}
e=normalizeMouseEvent(e);if(!hasTouch){e.returnValue=false;}
var chartX=e.chartX,chartY=e.chartY,isOutsidePlot=!isInsidePlot(chartX-plotLeft,chartY-plotTop);if(hasTouch&&e.type==='touchstart'){if(attr(e.target,'isTracker')){if(!chart.runTrackerClick){e.preventDefault();}}else if(!runChartClick&&!isOutsidePlot){e.preventDefault();}}
if(isOutsidePlot){if(!lastWasOutsidePlot){resetTracker();}
if(chartX<plotLeft){chartX=plotLeft;}else if(chartX>plotLeft+plotWidth){chartX=plotLeft+plotWidth;}
if(chartY<plotTop){chartY=plotTop;}else if(chartY>plotTop+plotHeight){chartY=plotTop+plotHeight;}}
if(mouseIsDown&&e.type!=='touchstart'){hasDragged=Math.sqrt(Math.pow(mouseDownX-chartX,2)+
Math.pow(mouseDownY-chartY,2));if(hasDragged>10){if(hasCartesianSeries&&(zoomX||zoomY)&&isInsidePlot(mouseDownX-plotLeft,mouseDownY-plotTop)){if(!selectionMarker){selectionMarker=renderer.rect(plotLeft,plotTop,zoomHor?1:plotWidth,zoomVert?1:plotHeight,0).attr({fill:'rgba(69,114,167,0.25)',zIndex:7}).add();}}
if(selectionMarker&&zoomHor){var xSize=chartX-mouseDownX;selectionMarker.attr({width:mathAbs(xSize),x:(xSize>0?0:xSize)+mouseDownX});}
if(selectionMarker&&zoomVert){var ySize=chartY-mouseDownY;selectionMarker.attr({height:mathAbs(ySize),y:(ySize>0?0:ySize)+mouseDownY});}}}else if(!isOutsidePlot){onmousemove(e);}
lastWasOutsidePlot=isOutsidePlot;return isOutsidePlot||!hasCartesianSeries;};container.onmousemove=mouseMove;addEvent(container,'mouseleave',resetTracker);container.ontouchstart=function(e){if(zoomX||zoomY){container.onmousedown(e);}
mouseMove(e);};container.ontouchmove=mouseMove;container.ontouchend=function(){if(hasDragged){resetTracker();}};container.onclick=function(e){var hoverPoint=chart.hoverPoint;e=normalizeMouseEvent(e);e.cancelBubble=true;if(!hasDragged){if(hoverPoint&&attr(e.target,'isTracker')){var plotX=hoverPoint.plotX,plotY=hoverPoint.plotY;extend(hoverPoint,{pageX:chartPosition.left+plotLeft+
(inverted?plotWidth-plotY:plotX),pageY:chartPosition.top+plotTop+
(inverted?plotHeight-plotX:plotY)});fireEvent(hoverPoint.series,'click',extend(e,{point:hoverPoint}));hoverPoint.firePointEvent('click',e);}else{extend(e,getMouseCoordinates(e));if(isInsidePlot(e.chartX-plotLeft,e.chartY-plotTop)){fireEvent(chart,'click',e);}}}
hasDragged=false;};}
placeTrackerGroup=function(){if(!trackerGroup){chart.trackerGroup=trackerGroup=renderer.g('tracker').attr({zIndex:9}).add();}else{trackerGroup.translate(plotLeft,plotTop);if(inverted){trackerGroup.attr({width:chart.plotWidth,height:chart.plotHeight}).invert();}}};placeTrackerGroup();if(options.enabled){chart.tooltip=tooltip=Tooltip(options);}
setDOMEvents();tooltipInterval=setInterval(function(){if(tooltipTick){tooltipTick();}},32);extend(this,{zoomX:zoomX,zoomY:zoomY,resetTracker:resetTracker});}
var Legend=function(chart){var options=chart.options.legend;if(!options.enabled){return;}
var horizontal=options.layout==='horizontal',symbolWidth=options.symbolWidth,symbolPadding=options.symbolPadding,allItems,style=options.style,itemStyle=options.itemStyle,itemHoverStyle=options.itemHoverStyle,itemHiddenStyle=options.itemHiddenStyle,padding=pInt(style.padding),rightPadding=20,y=18,initialItemX=4+padding+symbolWidth+symbolPadding,itemX,itemY,lastItemY,itemHeight=0,box,legendBorderWidth=options.borderWidth,legendBackgroundColor=options.backgroundColor,legendGroup,offsetWidth,widthOption=options.width,series=chart.series,reversedLegend=options.reversed;function colorizeItem(item,visible){var legendItem=item.legendItem,legendLine=item.legendLine,legendSymbol=item.legendSymbol,hiddenColor=itemHiddenStyle.color,textColor=visible?options.itemStyle.color:hiddenColor,lineColor=visible?item.color:hiddenColor,symbolAttr=visible?item.pointAttr[NORMAL_STATE]:{stroke:hiddenColor,fill:hiddenColor};if(legendItem){legendItem.css({fill:textColor});}
if(legendLine){legendLine.attr({stroke:lineColor});}
if(legendSymbol){legendSymbol.attr(symbolAttr);}}
function positionItem(item,itemX,itemY){var legendItem=item.legendItem,legendLine=item.legendLine,legendSymbol=item.legendSymbol,checkbox=item.checkbox;if(legendItem){legendItem.attr({x:itemX,y:itemY});}
if(legendLine){legendLine.translate(itemX,itemY-4);}
if(legendSymbol){legendSymbol.attr({x:itemX+legendSymbol.xOff,y:itemY+legendSymbol.yOff});}
if(checkbox){checkbox.x=itemX;checkbox.y=itemY;}}
function destroyItem(item){var checkbox=item.checkbox;each(['legendItem','legendLine','legendSymbol'],function(key){if(item[key]){item[key].destroy();}});if(checkbox){discardElement(item.checkbox);}}
function positionCheckboxes(){each(allItems,function(item){var checkbox=item.checkbox,alignAttr=legendGroup.alignAttr;if(checkbox){css(checkbox,{left:(alignAttr.translateX+item.legendItemWidth+checkbox.x-40)+PX,top:(alignAttr.translateY+checkbox.y-11)+PX});}});}
function renderItem(item){var bBox,itemWidth,legendSymbol,symbolX,symbolY,attribs,simpleSymbol,li=item.legendItem,series=item.series||item,i=allItems.length,itemOptions=series.options,strokeWidth=(itemOptions&&itemOptions.borderWidth)||0;if(!li){simpleSymbol=/^(bar|pie|area|column)$/.test(series.type);item.legendItem=li=renderer.text(options.labelFormatter.call(item),0,0).css(item.visible?itemStyle:itemHiddenStyle).on('mouseover',function(){item.setState(HOVER_STATE);li.css(itemHoverStyle);}).on('mouseout',function(){li.css(item.visible?itemStyle:itemHiddenStyle);item.setState();}).on('click',function(event){var strLegendItemClick='legendItemClick',fnLegendItemClick=function(){item.setVisible();};if(item.firePointEvent){item.firePointEvent(strLegendItemClick,null,fnLegendItemClick);}else{fireEvent(item,strLegendItemClick,null,fnLegendItemClick);}}).attr({zIndex:2}).add(legendGroup);if(!simpleSymbol&&itemOptions&&itemOptions.lineWidth){var attrs={'stroke-width':itemOptions.lineWidth,zIndex:2};if(itemOptions.dashStyle){attrs.dashstyle=itemOptions.dashStyle;}
item.legendLine=renderer.path([M,-symbolWidth-symbolPadding,0,L,-symbolPadding,0]).attr(attrs).add(legendGroup);}
if(simpleSymbol){legendSymbol=renderer.rect((symbolX=-symbolWidth-symbolPadding),(symbolY=-11),symbolWidth,12,2).attr({zIndex:3}).add(legendGroup);}
else if(itemOptions&&itemOptions.marker&&itemOptions.marker.enabled){legendSymbol=renderer.symbol(item.symbol,(symbolX=-symbolWidth/2-symbolPadding),(symbolY=-4),itemOptions.marker.radius).attr({zIndex:3}).add(legendGroup);}
if(legendSymbol){legendSymbol.xOff=symbolX+(strokeWidth%2/2);legendSymbol.yOff=symbolY+(strokeWidth%2/2);}
item.legendSymbol=legendSymbol;colorizeItem(item,item.visible);if(itemOptions&&itemOptions.showCheckbox){item.checkbox=createElement('input',{type:'checkbox',checked:item.selected,defaultChecked:item.selected},options.itemCheckboxStyle,container);addEvent(item.checkbox,'click',function(event){var target=event.target;fireEvent(item,'checkboxClick',{checked:target.checked},function(){item.select();});});}}
bBox=li.getBBox();itemWidth=item.legendItemWidth=options.itemWidth||symbolWidth+symbolPadding+bBox.width+rightPadding;itemHeight=bBox.height;if(horizontal&&itemX-initialItemX+itemWidth>(widthOption||(chartWidth-2*padding-initialItemX))){itemX=initialItemX;itemY+=itemHeight;}
lastItemY=itemY;positionItem(item,itemX,itemY);if(horizontal){itemX+=itemWidth;}else{itemY+=itemHeight;}
offsetWidth=widthOption||mathMax(horizontal?itemX-initialItemX:itemWidth,offsetWidth);}
function renderLegend(){itemX=initialItemX;itemY=y;offsetWidth=0;lastItemY=0;if(!legendGroup){legendGroup=renderer.g('legend').attr({zIndex:7}).add();}
allItems=[];each(series,function(serie){var seriesOptions=serie.options;if(!seriesOptions.showInLegend){return;}
allItems=allItems.concat(seriesOptions.legendType==='point'?serie.data:serie);});allItems.sort(function(a,b){return(a.options.legendIndex||0)-(b.options.legendIndex||0);});if(reversedLegend){allItems.reverse();}
each(allItems,renderItem);legendWidth=widthOption||offsetWidth;legendHeight=lastItemY-y+itemHeight;if(legendBorderWidth||legendBackgroundColor){legendWidth+=2*padding;legendHeight+=2*padding;if(!box){box=renderer.rect(0,0,legendWidth,legendHeight,options.borderRadius,legendBorderWidth||0).attr({stroke:options.borderColor,'stroke-width':legendBorderWidth||0,fill:legendBackgroundColor||NONE}).add(legendGroup).shadow(options.shadow);}else if(legendWidth>0&&legendHeight>0){box.animate(box.crisp(null,null,null,legendWidth,legendHeight));}
box[allItems.length?'show':'hide']();}
var props=['left','right','top','bottom'],prop,i=4;while(i--){prop=props[i];if(style[prop]&&style[prop]!=='auto'){options[i<2?'align':'verticalAlign']=prop;options[i<2?'x':'y']=pInt(style[prop])*(i%2?-1:1);}}
legendGroup.align(extend(options,{width:legendWidth,height:legendHeight}),true,spacingBox);if(!isResizing){positionCheckboxes();}}
renderLegend();addEvent(chart,'endResize',positionCheckboxes);return{colorizeItem:colorizeItem,destroyItem:destroyItem,renderLegend:renderLegend};};function initSeries(options){var type=options.type||optionsChart.type||optionsChart.defaultSeriesType,typeClass=seriesTypes[type],serie,hasRendered=chart.hasRendered;if(hasRendered){if(inverted&&type==='column'){typeClass=seriesTypes.bar;}else if(!inverted&&type==='bar'){typeClass=seriesTypes.column;}}
serie=new typeClass();serie.init(chart,options);if(!hasRendered&&serie.inverted){inverted=true;}
if(serie.isCartesian){hasCartesianSeries=serie.isCartesian;}
series.push(serie);return serie;}
function addSeries(options,redraw,animation){var series;if(options){setAnimation(animation,chart);redraw=pick(redraw,true);fireEvent(chart,'addSeries',{options:options},function(){series=initSeries(options);series.isDirty=true;chart.isDirtyLegend=true;if(redraw){chart.redraw();}});}
return series;}
isInsidePlot=function(x,y){return x>=0&&x<=plotWidth&&y>=0&&y<=plotHeight;};function adjustTickAmounts(){if(optionsChart.alignTicks!==false){each(axes,function(axis){axis.adjustTickAmount();});}
maxTicks=null;}
function redraw(animation){var redrawLegend=chart.isDirtyLegend,hasStackedSeries,isDirtyBox=chart.isDirtyBox,seriesLength=series.length,i=seriesLength,clipRect=chart.clipRect,serie;setAnimation(animation,chart);while(i--){serie=series[i];if(serie.isDirty&&serie.options.stacking){hasStackedSeries=true;break;}}
if(hasStackedSeries){i=seriesLength;while(i--){serie=series[i];if(serie.options.stacking){serie.isDirty=true;}}}
each(series,function(serie){if(serie.isDirty){serie.cleanData();serie.getSegments();if(serie.options.legendType==='point'){redrawLegend=true;}}});if(redrawLegend&&legend.renderLegend){legend.renderLegend();chart.isDirtyLegend=false;}
if(hasCartesianSeries){if(!isResizing){maxTicks=null;each(axes,function(axis){axis.setScale();});}
adjustTickAmounts();getMargins();each(axes,function(axis){if(axis.isDirty||isDirtyBox){axis.redraw();isDirtyBox=true;}});}
if(isDirtyBox){drawChartBox();placeTrackerGroup();if(clipRect){stop(clipRect);clipRect.animate({width:chart.plotSizeX,height:chart.plotSizeY});}}
each(series,function(serie){if(serie.isDirty&&serie.visible&&(!serie.isCartesian||serie.xAxis)){serie.redraw();}});if(tracker&&tracker.resetTracker){tracker.resetTracker();}
fireEvent(chart,'redraw');}
function showLoading(str){var loadingOptions=options.loading;if(!loadingDiv){loadingDiv=createElement(DIV,{className:'highcharts-loading'},extend(loadingOptions.style,{left:plotLeft+PX,top:plotTop+PX,width:plotWidth+PX,height:plotHeight+PX,zIndex:10,display:NONE}),container);loadingSpan=createElement('span',null,loadingOptions.labelStyle,loadingDiv);}
loadingSpan.innerHTML=str||options.lang.loading;if(!loadingShown){css(loadingDiv,{opacity:0,display:''});animate(loadingDiv,{opacity:loadingOptions.style.opacity},{duration:loadingOptions.showDuration});loadingShown=true;}}
function hideLoading(){animate(loadingDiv,{opacity:0},{duration:options.loading.hideDuration,complete:function(){css(loadingDiv,{display:NONE});}});loadingShown=false;}
function get(id){var i,j,data;for(i=0;i<axes.length;i++){if(axes[i].options.id===id){return axes[i];}}
for(i=0;i<series.length;i++){if(series[i].options.id===id){return series[i];}}
for(i=0;i<series.length;i++){data=series[i].data;for(j=0;j<data.length;j++){if(data[j].id===id){return data[j];}}}
return null;}
function getAxes(){var xAxisOptions=options.xAxis||{},yAxisOptions=options.yAxis||{},axis;xAxisOptions=splat(xAxisOptions);each(xAxisOptions,function(axis,i){axis.index=i;axis.isX=true;});yAxisOptions=splat(yAxisOptions);each(yAxisOptions,function(axis,i){axis.index=i;});axes=xAxisOptions.concat(yAxisOptions);chart.xAxis=[];chart.yAxis=[];axes=map(axes,function(axisOptions){axis=new Axis(chart,axisOptions);chart[axis.isXAxis?'xAxis':'yAxis'].push(axis);return axis;});adjustTickAmounts();}
function getSelectedPoints(){var points=[];each(series,function(serie){points=points.concat(grep(serie.data,function(point){return point.selected;}));});return points;}
function getSelectedSeries(){return grep(series,function(serie){return serie.selected;});}
zoomOut=function(){fireEvent(chart,'selection',{resetSelection:true},zoom);chart.toolbar.remove('zoom');};zoom=function(event){var lang=defaultOptions.lang,animate=chart.pointCount<100;chart.toolbar.add('zoom',lang.resetZoom,lang.resetZoomTitle,zoomOut);if(!event||event.resetSelection){each(axes,function(axis){axis.setExtremes(null,null,false,animate);});}
else{each(event.xAxis.concat(event.yAxis),function(axisData){var axis=axisData.axis;if(chart.tracker[axis.isXAxis?'zoomX':'zoomY']){axis.setExtremes(axisData.min,axisData.max,false,animate);}});}
redraw();};function setTitle(titleOptions,subtitleOptions){chartTitleOptions=merge(options.title,titleOptions);chartSubtitleOptions=merge(options.subtitle,subtitleOptions);each([['title',titleOptions,chartTitleOptions],['subtitle',subtitleOptions,chartSubtitleOptions]],function(arr){var name=arr[0],title=chart[name],titleOptions=arr[1],chartTitleOptions=arr[2];if(title&&titleOptions){title.destroy();title=null;}
if(chartTitleOptions&&chartTitleOptions.text&&!title){chart[name]=renderer.text(chartTitleOptions.text,0,0).attr({align:chartTitleOptions.align,'class':'highcharts-'+name,zIndex:1}).css(chartTitleOptions.style).add().align(chartTitleOptions,false,spacingBox);}});}
function getChartSize(){containerWidth=(renderToClone||renderTo).offsetWidth;containerHeight=(renderToClone||renderTo).offsetHeight;chart.chartWidth=chartWidth=optionsChart.width||containerWidth||600;chart.chartHeight=chartHeight=optionsChart.height||(containerHeight>19?containerHeight:400);}
function getContainer(){renderTo=optionsChart.renderTo;containerId=PREFIX+idCounter++;if(isString(renderTo)){renderTo=doc.getElementById(renderTo);}
renderTo.innerHTML='';if(!renderTo.offsetWidth){renderToClone=renderTo.cloneNode(0);css(renderToClone,{position:ABSOLUTE,top:'-9999px',display:''});doc.body.appendChild(renderToClone);}
getChartSize();chart.container=container=createElement(DIV,{className:'highcharts-container'+
(optionsChart.className?' '+optionsChart.className:''),id:containerId},extend({position:RELATIVE,overflow:HIDDEN,width:chartWidth+PX,height:chartHeight+PX,textAlign:'left'},optionsChart.style),renderToClone||renderTo);chart.renderer=renderer=optionsChart.forExport?new SVGRenderer(container,chartWidth,chartHeight,true):new Renderer(container,chartWidth,chartHeight);var subPixelFix,rect;if(isFirefox&&container.getBoundingClientRect){subPixelFix=function(){css(container,{left:0,top:0});rect=container.getBoundingClientRect();css(container,{left:(-(rect.left-pInt(rect.left)))+PX,top:(-(rect.top-pInt(rect.top)))+PX});};subPixelFix();addEvent(win,'resize',subPixelFix);addEvent(chart,'destroy',function(){removeEvent(win,'resize',subPixelFix);});}}
getMargins=function(){var legendOptions=options.legend,legendMargin=pick(legendOptions.margin,10),legendX=legendOptions.x,legendY=legendOptions.y,align=legendOptions.align,verticalAlign=legendOptions.verticalAlign,titleOffset;resetMargins();if((chart.title||chart.subtitle)&&!defined(optionsMarginTop)){titleOffset=mathMax((chart.title&&!chartTitleOptions.floating&&!chartTitleOptions.verticalAlign&&chartTitleOptions.y)||0,(chart.subtitle&&!chartSubtitleOptions.floating&&!chartSubtitleOptions.verticalAlign&&chartSubtitleOptions.y)||0);if(titleOffset){plotTop=mathMax(plotTop,titleOffset+pick(chartTitleOptions.margin,15)+spacingTop);}}
if(legendOptions.enabled&&!legendOptions.floating){if(align==='right'){if(!defined(optionsMarginRight)){marginRight=mathMax(marginRight,legendWidth-legendX+legendMargin+spacingRight);}}else if(align==='left'){if(!defined(optionsMarginLeft)){plotLeft=mathMax(plotLeft,legendWidth+legendX+legendMargin+spacingLeft);}}else if(verticalAlign==='top'){if(!defined(optionsMarginTop)){plotTop=mathMax(plotTop,legendHeight+legendY+legendMargin+spacingTop);}}else if(verticalAlign==='bottom'){if(!defined(optionsMarginBottom)){marginBottom=mathMax(marginBottom,legendHeight-legendY+legendMargin+spacingBottom);}}}
if(hasCartesianSeries){each(axes,function(axis){axis.getOffset();});}
if(!defined(optionsMarginLeft)){plotLeft+=axisOffset[3];}
if(!defined(optionsMarginTop)){plotTop+=axisOffset[0];}
if(!defined(optionsMarginBottom)){marginBottom+=axisOffset[2];}
if(!defined(optionsMarginRight)){marginRight+=axisOffset[1];}
setChartSize();};function initReflow(){var reflowTimeout;function reflow(){var width=optionsChart.width||renderTo.offsetWidth,height=optionsChart.height||renderTo.offsetHeight;if(width&&height){if(width!==containerWidth||height!==containerHeight){clearTimeout(reflowTimeout);reflowTimeout=setTimeout(function(){resize(width,height,false);},100);}
containerWidth=width;containerHeight=height;}}
addEvent(win,'resize',reflow);addEvent(chart,'destroy',function(){removeEvent(win,'resize',reflow);});}
resize=function(width,height,animation){var chartTitle=chart.title,chartSubtitle=chart.subtitle;isResizing+=1;setAnimation(animation,chart);oldChartHeight=chartHeight;oldChartWidth=chartWidth;chart.chartWidth=chartWidth=mathRound(width);chart.chartHeight=chartHeight=mathRound(height);css(container,{width:chartWidth+PX,height:chartHeight+PX});renderer.setSize(chartWidth,chartHeight,animation);plotWidth=chartWidth-plotLeft-marginRight;plotHeight=chartHeight-plotTop-marginBottom;maxTicks=null;each(axes,function(axis){axis.isDirty=true;axis.setScale();});each(series,function(serie){serie.isDirty=true;});chart.isDirtyLegend=true;chart.isDirtyBox=true;getMargins();if(chartTitle){chartTitle.align(null,null,spacingBox);}
if(chartSubtitle){chartSubtitle.align(null,null,spacingBox);}
redraw(animation);oldChartHeight=null;fireEvent(chart,'resize');setTimeout(function(){fireEvent(chart,'endResize',null,function(){isResizing-=1;});},(globalAnimation&&globalAnimation.duration)||500);};setChartSize=function(){chart.plotLeft=plotLeft=mathRound(plotLeft);chart.plotTop=plotTop=mathRound(plotTop);chart.plotWidth=plotWidth=mathRound(chartWidth-plotLeft-marginRight);chart.plotHeight=plotHeight=mathRound(chartHeight-plotTop-marginBottom);chart.plotSizeX=inverted?plotHeight:plotWidth;chart.plotSizeY=inverted?plotWidth:plotHeight;spacingBox={x:spacingLeft,y:spacingTop,width:chartWidth-spacingLeft-spacingRight,height:chartHeight-spacingTop-spacingBottom};};resetMargins=function(){plotTop=pick(optionsMarginTop,spacingTop);marginRight=pick(optionsMarginRight,spacingRight);marginBottom=pick(optionsMarginBottom,spacingBottom);plotLeft=pick(optionsMarginLeft,spacingLeft);axisOffset=[0,0,0,0];};drawChartBox=function(){var chartBorderWidth=optionsChart.borderWidth||0,chartBackgroundColor=optionsChart.backgroundColor,plotBackgroundColor=optionsChart.plotBackgroundColor,plotBackgroundImage=optionsChart.plotBackgroundImage,mgn,plotSize={x:plotLeft,y:plotTop,width:plotWidth,height:plotHeight};mgn=chartBorderWidth+(optionsChart.shadow?8:0);if(chartBorderWidth||chartBackgroundColor){if(!chartBackground){chartBackground=renderer.rect(mgn/2,mgn/2,chartWidth-mgn,chartHeight-mgn,optionsChart.borderRadius,chartBorderWidth).attr({stroke:optionsChart.borderColor,'stroke-width':chartBorderWidth,fill:chartBackgroundColor||NONE}).add().shadow(optionsChart.shadow);}else{chartBackground.animate(chartBackground.crisp(null,null,null,chartWidth-mgn,chartHeight-mgn));}}
if(plotBackgroundColor){if(!plotBackground){plotBackground=renderer.rect(plotLeft,plotTop,plotWidth,plotHeight,0).attr({fill:plotBackgroundColor}).add().shadow(optionsChart.plotShadow);}else{plotBackground.animate(plotSize);}}
if(plotBackgroundImage){if(!plotBGImage){plotBGImage=renderer.image(plotBackgroundImage,plotLeft,plotTop,plotWidth,plotHeight).add();}else{plotBGImage.animate(plotSize);}}
if(optionsChart.plotBorderWidth){if(!plotBorder){plotBorder=renderer.rect(plotLeft,plotTop,plotWidth,plotHeight,0,optionsChart.plotBorderWidth).attr({stroke:optionsChart.plotBorderColor,'stroke-width':optionsChart.plotBorderWidth,zIndex:4}).add();}else{plotBorder.animate(plotBorder.crisp(null,plotLeft,plotTop,plotWidth,plotHeight));}}
chart.isDirtyBox=false;};function render(){var labels=options.labels,credits=options.credits,creditsHref;setTitle();legend=chart.legend=new Legend(chart);getMargins();each(axes,function(axis){axis.setTickPositions(true);});adjustTickAmounts();getMargins();drawChartBox();if(hasCartesianSeries){each(axes,function(axis){axis.render();});}
if(!chart.seriesGroup){chart.seriesGroup=renderer.g('series-group').attr({zIndex:3}).add();}
each(series,function(serie){serie.translate();serie.setTooltipPoints();serie.render();});if(labels.items){each(labels.items,function(){var style=extend(labels.style,this.style),x=pInt(style.left)+plotLeft,y=pInt(style.top)+plotTop+12;delete style.left;delete style.top;renderer.text(this.html,x,y).attr({zIndex:2}).css(style).add();});}
if(!chart.toolbar){chart.toolbar=Toolbar(chart);}
if(credits.enabled&&!chart.credits){creditsHref=credits.href;renderer.text(credits.text,0,0).on('click',function(){if(creditsHref){location.href=creditsHref;}}).attr({align:credits.position.align,zIndex:8}).css(credits.style).add().align(credits.position);}
placeTrackerGroup();chart.hasRendered=true;if(renderToClone){renderTo.appendChild(container);discardElement(renderToClone);}}
function destroy(){var i=series.length,parentNode=container&&container.parentNode;fireEvent(chart,'destroy');removeEvent(win,'unload',destroy);removeEvent(chart);each(axes,function(axis){removeEvent(axis);});while(i--){series[i].destroy();}
if(container){container.innerHTML='';removeEvent(container);if(parentNode){parentNode.removeChild(container);}
container=null;}
if(renderer){renderer.alignedObjects=null;}
clearInterval(tooltipInterval);for(i in chart){delete chart[i];}}
function firstRender(){var ONREADYSTATECHANGE='onreadystatechange',COMPLETE='complete';if(!hasSVG&&win==win.top&&doc.readyState!==COMPLETE){doc.attachEvent(ONREADYSTATECHANGE,function(){doc.detachEvent(ONREADYSTATECHANGE,firstRender);if(doc.readyState===COMPLETE){firstRender();}});return;}
colorCounter=0;symbolCounter=0;getContainer();resetMargins();setChartSize();each(options.series||[],function(serieOptions){initSeries(serieOptions);});chart.inverted=inverted=pick(inverted,options.chart.inverted);getAxes();chart.render=render;chart.tracker=tracker=new MouseTracker(chart,options.tooltip);render();fireEvent(chart,'load');if(callback){callback.apply(chart,[chart]);}
each(chart.callbacks,function(fn){fn.apply(chart,[chart]);});}
addEvent(win,'unload',destroy);if(optionsChart.reflow!==false){addEvent(chart,'load',initReflow);}
if(chartEvents){for(eventType in chartEvents){addEvent(chart,eventType,chartEvents[eventType]);}}
chart.options=options;chart.series=series;chart.addSeries=addSeries;chart.animation=pick(optionsChart.animation,true);chart.destroy=destroy;chart.get=get;chart.getSelectedPoints=getSelectedPoints;chart.getSelectedSeries=getSelectedSeries;chart.hideLoading=hideLoading;chart.isInsidePlot=isInsidePlot;chart.redraw=redraw;chart.setSize=resize;chart.setTitle=setTitle;chart.showLoading=showLoading;chart.pointCount=0;firstRender();}
Chart.prototype.callbacks=[];var Point=function(){};Point.prototype={init:function(series,options){var point=this,defaultColors;point.series=series;point.applyOptions(options);point.pointAttr={};if(series.options.colorByPoint){defaultColors=series.chart.options.colors;if(!point.options){point.options={};}
point.color=point.options.color=point.color||defaultColors[colorCounter++];if(colorCounter>=defaultColors.length){colorCounter=0;}}
series.chart.pointCount++;return point;},applyOptions:function(options){var point=this,series=point.series;point.config=options;if(isNumber(options)||options===null){point.y=options;}
else if(isObject(options)&&!isNumber(options.length)){extend(point,options);point.options=options;}
else if(isString(options[0])){point.name=options[0];point.y=options[1];}
else if(isNumber(options[0])){point.x=options[0];point.y=options[1];}
if(point.x===UNDEFINED){point.x=series.autoIncrement();}},destroy:function(){var point=this,series=point.series,prop;series.chart.pointCount--;if(point===series.chart.hoverPoint){point.onMouseOut();}
series.chart.hoverPoints=null;removeEvent(point);each(['graphic','tracker','group','dataLabel','connector'],function(prop){if(point[prop]){point[prop].destroy();}});if(point.legendItem){point.series.chart.legend.destroyItem(point);}
for(prop in point){point[prop]=null;}},getLabelConfig:function(){var point=this;return{x:point.category,y:point.y,series:point.series,point:point,percentage:point.percentage,total:point.total||point.stackTotal};},select:function(selected,accumulate){var point=this,series=point.series,chart=series.chart;point.selected=selected=pick(selected,!point.selected);point.firePointEvent(selected?'select':'unselect');point.setState(selected&&SELECT_STATE);if(!accumulate){each(chart.getSelectedPoints(),function(loopPoint){if(loopPoint.selected&&loopPoint!==point){loopPoint.selected=false;loopPoint.setState(NORMAL_STATE);loopPoint.firePointEvent('unselect');}});}},onMouseOver:function(){var point=this,chart=point.series.chart,tooltip=chart.tooltip,hoverPoint=chart.hoverPoint;if(hoverPoint&&hoverPoint!==point){hoverPoint.onMouseOut();}
point.firePointEvent('mouseOver');if(tooltip&&!tooltip.shared){tooltip.refresh(point);}
point.setState(HOVER_STATE);chart.hoverPoint=point;},onMouseOut:function(){var point=this;point.firePointEvent('mouseOut');point.setState();point.series.chart.hoverPoint=null;},tooltipFormatter:function(useHeader){var point=this,series=point.series;return['<span style="color:'+series.color+'">',(point.name||series.name),'</span>: ',(!useHeader?('<b>x = '+(point.name||point.x)+',</b> '):''),'<b>',(!useHeader?'y = ':''),point.y,'</b>'].join('');},update:function(options,redraw,animation){var point=this,series=point.series,dataLabel=point.dataLabel,graphic=point.graphic,chart=series.chart;redraw=pick(redraw,true);point.firePointEvent('update',{options:options},function(){point.applyOptions(options);if(isObject(options)){series.getAttribs();if(graphic){graphic.attr(point.pointAttr[series.state]);}}
series.isDirty=true;if(redraw){chart.redraw(animation);}});},remove:function(redraw,animation){var point=this,series=point.series,chart=series.chart,data=series.data;setAnimation(animation,chart);redraw=pick(redraw,true);point.firePointEvent('remove',null,function(){erase(data,point);point.destroy();series.isDirty=true;if(redraw){chart.redraw();}});},firePointEvent:function(eventType,eventArgs,defaultFunction){var point=this,series=this.series,seriesOptions=series.options;if(seriesOptions.point.events[eventType]||(point.options&&point.options.events&&point.options.events[eventType])){this.importEvents();}
if(eventType==='click'&&seriesOptions.allowPointSelect){defaultFunction=function(event){point.select(null,event.ctrlKey||event.metaKey||event.shiftKey);};}
fireEvent(this,eventType,eventArgs,defaultFunction);},importEvents:function(){if(!this.hasImportedEvents){var point=this,options=merge(point.series.options.point,point.options),events=options.events,eventType;point.events=events;for(eventType in events){addEvent(point,eventType,events[eventType]);}
this.hasImportedEvents=true;}},setState:function(state){var point=this,series=point.series,stateOptions=series.options.states,markerOptions=defaultPlotOptions[series.type].marker&&series.options.marker,normalDisabled=markerOptions&&!markerOptions.enabled,markerStateOptions=markerOptions&&markerOptions.states[state],stateDisabled=markerStateOptions&&markerStateOptions.enabled===false,stateMarkerGraphic=series.stateMarkerGraphic,chart=series.chart,pointAttr=point.pointAttr;state=state||NORMAL_STATE;if(state===point.state||(point.selected&&state!==SELECT_STATE)||(stateOptions[state]&&stateOptions[state].enabled===false)||(state&&(stateDisabled||(normalDisabled&&!markerStateOptions.enabled)))){return;}
if(point.graphic){point.graphic.attr(pointAttr[state]);}
else{if(state){if(!stateMarkerGraphic){series.stateMarkerGraphic=stateMarkerGraphic=chart.renderer.circle(0,0,pointAttr[state].r).attr(pointAttr[state]).add(series.group);}
stateMarkerGraphic.translate(point.plotX,point.plotY);}
if(stateMarkerGraphic){stateMarkerGraphic[state?'show':'hide']();}}
point.state=state;}};var Series=function(){};Series.prototype={isCartesian:true,type:'line',pointClass:Point,pointAttrToOptions:{stroke:'lineColor','stroke-width':'lineWidth',fill:'fillColor',r:'radius'},init:function(chart,options){var series=this,eventType,events,index=chart.series.length;series.chart=chart;options=series.setOptions(options);extend(series,{index:index,options:options,name:options.name||'Series '+(index+1),state:NORMAL_STATE,pointAttr:{},visible:options.visible!==false,selected:options.selected===true});events=options.events;for(eventType in events){addEvent(series,eventType,events[eventType]);}
if((events&&events.click)||(options.point&&options.point.events&&options.point.events.click)||options.allowPointSelect){chart.runTrackerClick=true;}
series.getColor();series.getSymbol();series.setData(options.data,false);},autoIncrement:function(){var series=this,options=series.options,xIncrement=series.xIncrement;xIncrement=pick(xIncrement,options.pointStart,0);series.pointInterval=pick(series.pointInterval,options.pointInterval,1);series.xIncrement=xIncrement+series.pointInterval;return xIncrement;},cleanData:function(){var series=this,chart=series.chart,data=series.data,closestPoints,smallestInterval,chartSmallestInterval=chart.smallestInterval,interval,i;data.sort(function(a,b){return(a.x-b.x);});if(series.options.connectNulls){for(i=data.length-1;i>=0;i--){if(data[i].y===null&&data[i-1]&&data[i+1]){data.splice(i,1);}}}
for(i=data.length-1;i>=0;i--){if(data[i-1]){interval=data[i].x-data[i-1].x;if(interval>0&&(smallestInterval===UNDEFINED||interval<smallestInterval)){smallestInterval=interval;closestPoints=i;}}}
if(chartSmallestInterval===UNDEFINED||smallestInterval<chartSmallestInterval){chart.smallestInterval=smallestInterval;}
series.closestPoints=closestPoints;},getSegments:function(){var lastNull=-1,segments=[],data=this.data;each(data,function(point,i){if(point.y===null){if(i>lastNull+1){segments.push(data.slice(lastNull+1,i));}
lastNull=i;}else if(i===data.length-1){segments.push(data.slice(lastNull+1,i+1));}});this.segments=segments;},setOptions:function(itemOptions){var plotOptions=this.chart.options.plotOptions,options=merge(plotOptions[this.type],plotOptions.series,itemOptions);return options;},getColor:function(){var defaultColors=this.chart.options.colors;this.color=this.options.color||defaultColors[colorCounter++]||'#0000ff';if(colorCounter>=defaultColors.length){colorCounter=0;}},getSymbol:function(){var defaultSymbols=this.chart.options.symbols,symbol=this.options.marker.symbol||defaultSymbols[symbolCounter++];this.symbol=symbol;if(symbolCounter>=defaultSymbols.length){symbolCounter=0;}},addPoint:function(options,redraw,shift,animation){var series=this,data=series.data,graph=series.graph,area=series.area,chart=series.chart,point=(new series.pointClass()).init(series,options);setAnimation(animation,chart);if(graph&&shift){graph.shift=shift;}
if(area){area.shift=shift;area.isArea=true;}
redraw=pick(redraw,true);data.push(point);if(shift){data[0].remove(false);}
series.getAttribs();series.isDirty=true;if(redraw){chart.redraw();}},setData:function(data,redraw){var series=this,oldData=series.data,initialColor=series.initialColor,chart=series.chart,i=(oldData&&oldData.length)||0;series.xIncrement=null;if(defined(initialColor)){colorCounter=initialColor;}
data=map(splat(data||[]),function(pointOptions){return(new series.pointClass()).init(series,pointOptions);});while(i--){oldData[i].destroy();}
series.data=data;series.cleanData();series.getSegments();series.getAttribs();series.isDirty=true;chart.isDirtyBox=true;if(pick(redraw,true)){chart.redraw(false);}},remove:function(redraw,animation){var series=this,chart=series.chart;redraw=pick(redraw,true);if(!series.isRemoving){series.isRemoving=true;fireEvent(series,'remove',null,function(){series.destroy();chart.isDirtyLegend=chart.isDirtyBox=true;if(redraw){chart.redraw(animation);}});}
series.isRemoving=false;},translate:function(){var series=this,chart=series.chart,stacking=series.options.stacking,categories=series.xAxis.categories,yAxis=series.yAxis,data=series.data,i=data.length;while(i--){var point=data[i],xValue=point.x,yValue=point.y,yBottom=point.low,stack=yAxis.stacks[(yValue<0?'-':'')+series.stackKey],pointStack,pointStackTotal;point.plotX=series.xAxis.translate(xValue);if(stacking&&series.visible&&stack&&stack[xValue]){pointStack=stack[xValue];pointStackTotal=pointStack.total;pointStack.cum=yBottom=pointStack.cum-yValue;yValue=yBottom+yValue;if(stacking==='percent'){yBottom=pointStackTotal?yBottom*100/pointStackTotal:0;yValue=pointStackTotal?yValue*100/pointStackTotal:0;}
point.percentage=pointStackTotal?point.y*100/pointStackTotal:0;point.stackTotal=pointStackTotal;}
if(defined(yBottom)){point.yBottom=yAxis.translate(yBottom,0,1,0,1);}
if(yValue!==null){point.plotY=yAxis.translate(yValue,0,1,0,1);}
point.clientX=chart.inverted?chart.plotHeight-point.plotX:point.plotX;point.category=categories&&categories[point.x]!==UNDEFINED?categories[point.x]:point.x;}},setTooltipPoints:function(renew){var series=this,chart=series.chart,inverted=chart.inverted,data=[],plotSize=mathRound((inverted?chart.plotTop:chart.plotLeft)+chart.plotSizeX),low,high,tooltipPoints=[];if(renew){series.tooltipPoints=null;}
each(series.segments,function(segment){data=data.concat(segment);});if(series.xAxis&&series.xAxis.reversed){data=data.reverse();}
each(data,function(point,i){low=data[i-1]?data[i-1]._high+1:0;high=point._high=data[i+1]?(mathFloor((point.plotX+(data[i+1]?data[i+1].plotX:plotSize))/2)):plotSize;while(low<=high){tooltipPoints[inverted?plotSize-low++:low++]=point;}});series.tooltipPoints=tooltipPoints;},onMouseOver:function(){var series=this,chart=series.chart,hoverSeries=chart.hoverSeries;if(!hasTouch&&chart.mouseIsDown){return;}
if(hoverSeries&&hoverSeries!==series){hoverSeries.onMouseOut();}
if(series.options.events.mouseOver){fireEvent(series,'mouseOver');}
if(series.tracker){series.tracker.toFront();}
series.setState(HOVER_STATE);chart.hoverSeries=series;},onMouseOut:function(){var series=this,options=series.options,chart=series.chart,tooltip=chart.tooltip,hoverPoint=chart.hoverPoint;if(hoverPoint){hoverPoint.onMouseOut();}
if(series&&options.events.mouseOut){fireEvent(series,'mouseOut');}
if(tooltip&&!options.stickyTracking){tooltip.hide();}
series.setState();chart.hoverSeries=null;},animate:function(init){var series=this,chart=series.chart,clipRect=series.clipRect,animation=series.options.animation;if(animation&&!isObject(animation)){animation={};}
if(init){if(!clipRect.isAnimating){clipRect.attr('width',0);clipRect.isAnimating=true;}}else{clipRect.animate({width:chart.plotSizeX},animation);this.animate=null;}},drawPoints:function(){var series=this,pointAttr,data=series.data,chart=series.chart,plotX,plotY,i,point,radius,graphic;if(series.options.marker.enabled){i=data.length;while(i--){point=data[i];plotX=point.plotX;plotY=point.plotY;graphic=point.graphic;if(plotY!==UNDEFINED&&!isNaN(plotY)){pointAttr=point.pointAttr[point.selected?SELECT_STATE:NORMAL_STATE];radius=pointAttr.r;if(graphic){graphic.animate({x:plotX,y:plotY,r:radius});}else{point.graphic=chart.renderer.symbol(pick(point.marker&&point.marker.symbol,series.symbol),plotX,plotY,radius).attr(pointAttr).add(series.group);}}}}},convertAttribs:function(options,base1,base2,base3){var conversion=this.pointAttrToOptions,attr,option,obj={};options=options||{};base1=base1||{};base2=base2||{};base3=base3||{};for(attr in conversion){option=conversion[attr];obj[attr]=pick(options[option],base1[attr],base2[attr],base3[attr]);}
return obj;},getAttribs:function(){var series=this,normalOptions=defaultPlotOptions[series.type].marker?series.options.marker:series.options,stateOptions=normalOptions.states,stateOptionsHover=stateOptions[HOVER_STATE],pointStateOptionsHover,seriesColor=series.color,normalDefaults={stroke:seriesColor,fill:seriesColor},data=series.data,i,point,seriesPointAttr=[],pointAttr,pointAttrToOptions=series.pointAttrToOptions,hasPointSpecificOptions,key;if(series.options.marker){stateOptionsHover.radius=stateOptionsHover.radius||normalOptions.radius+2;stateOptionsHover.lineWidth=stateOptionsHover.lineWidth||normalOptions.lineWidth+1;}else{stateOptionsHover.color=stateOptionsHover.color||Color(stateOptionsHover.color||seriesColor).brighten(stateOptionsHover.brightness).get();}
seriesPointAttr[NORMAL_STATE]=series.convertAttribs(normalOptions,normalDefaults);each([HOVER_STATE,SELECT_STATE],function(state){seriesPointAttr[state]=series.convertAttribs(stateOptions[state],seriesPointAttr[NORMAL_STATE]);});series.pointAttr=seriesPointAttr;i=data.length;while(i--){point=data[i];normalOptions=(point.options&&point.options.marker)||point.options;if(normalOptions&&normalOptions.enabled===false){normalOptions.radius=0;}
hasPointSpecificOptions=false;if(point.options){for(key in pointAttrToOptions){if(defined(normalOptions[pointAttrToOptions[key]])){hasPointSpecificOptions=true;}}}
if(hasPointSpecificOptions){pointAttr=[];stateOptions=normalOptions.states||{};pointStateOptionsHover=stateOptions[HOVER_STATE]=stateOptions[HOVER_STATE]||{};if(!series.options.marker){pointStateOptionsHover.color=Color(pointStateOptionsHover.color||point.options.color).brighten(pointStateOptionsHover.brightness||stateOptionsHover.brightness).get();}
pointAttr[NORMAL_STATE]=series.convertAttribs(normalOptions,seriesPointAttr[NORMAL_STATE]);pointAttr[HOVER_STATE]=series.convertAttribs(stateOptions[HOVER_STATE],seriesPointAttr[HOVER_STATE],pointAttr[NORMAL_STATE]);pointAttr[SELECT_STATE]=series.convertAttribs(stateOptions[SELECT_STATE],seriesPointAttr[SELECT_STATE],pointAttr[NORMAL_STATE]);}else{pointAttr=seriesPointAttr;}
point.pointAttr=pointAttr;}},destroy:function(){var series=this,chart=series.chart,clipRect=series.clipRect,issue134=/\/5[0-9\.]+ (Safari|Mobile)\//.test(userAgent),destroy,prop;removeEvent(series);if(series.legendItem){series.chart.legend.destroyItem(series);}
each(series.data,function(point){point.destroy();});each(['area','graph','dataLabelsGroup','group','tracker'],function(prop){if(series[prop]){destroy=issue134&&prop==='group'?'hide':'destroy';series[prop][destroy]();}});if(chart.hoverSeries===series){chart.hoverSeries=null;}
erase(chart.series,series);for(prop in series){delete series[prop];}},drawDataLabels:function(){if(this.options.dataLabels.enabled){var series=this,x,y,data=series.data,options=series.options.dataLabels,str,dataLabelsGroup=series.dataLabelsGroup,chart=series.chart,inverted=chart.inverted,seriesType=series.type,color,stacking=series.options.stacking,isBarLike=seriesType==='column'||seriesType==='bar',vAlignIsNull=options.verticalAlign===null,yIsNull=options.y===null;if(isBarLike){if(stacking){if(vAlignIsNull){options=merge(options,{verticalAlign:'middle'});}
if(yIsNull){options=merge(options,{y:{top:14,middle:4,bottom:-6}[options.verticalAlign]});}}else{if(vAlignIsNull){options=merge(options,{verticalAlign:'top'});}
if(yIsNull){options=merge(options,{y:-6});}}}
if(!dataLabelsGroup){dataLabelsGroup=series.dataLabelsGroup=chart.renderer.g('data-labels').attr({visibility:series.visible?VISIBLE:HIDDEN,zIndex:6}).translate(chart.plotLeft,chart.plotTop).add();}
color=options.color;if(color==='auto'){color=null;}
options.style.color=pick(color,series.color);each(data,function(point,i){var barX=point.barX,plotX=(barX&&barX+point.barW/2)||point.plotX||-999,plotY=pick(point.plotY,-999),dataLabel=point.dataLabel,align=options.align;str=options.formatter.call(point.getLabelConfig());x=(inverted?chart.plotWidth-plotY:plotX)+options.x;y=(inverted?chart.plotHeight-plotX:plotY)+options.y;if(seriesType==='column'){x+={left:-1,right:1}[align]*point.barW/2||0;}
if(dataLabel){if(inverted&&!options.y){y=y+pInt(dataLabel.styles.lineHeight)*0.9-dataLabel.getBBox().height/2;}
dataLabel.attr({text:str}).animate({x:x,y:y});}else if(defined(str)){dataLabel=point.dataLabel=chart.renderer.text(str,x,y).attr({align:align,rotation:options.rotation,zIndex:1}).css(options.style).add(dataLabelsGroup);if(inverted&&!options.y){dataLabel.attr({y:y+pInt(dataLabel.styles.lineHeight)*0.9-dataLabel.getBBox().height/2});}}
if(isBarLike&&series.options.stacking){var barY=point.barY,barW=point.barW,barH=point.barH;dataLabel.align(options,null,{x:inverted?chart.plotWidth-barY-barH:barX,y:inverted?chart.plotHeight-barX-barW:barY,width:inverted?barH:barW,height:inverted?barW:barH});}});}},drawGraph:function(state){var series=this,options=series.options,chart=series.chart,graph=series.graph,graphPath=[],fillColor,area=series.area,group=series.group,color=options.lineColor||series.color,lineWidth=options.lineWidth,dashStyle=options.dashStyle,segmentPath,renderer=chart.renderer,translatedThreshold=series.yAxis.getThreshold(options.threshold||0),useArea=/^area/.test(series.type),singlePoints=[],areaPath=[],attribs;each(series.segments,function(segment){segmentPath=[];each(segment,function(point,i){if(series.getPointSpline){segmentPath.push.apply(segmentPath,series.getPointSpline(segment,point,i));}else{segmentPath.push(i?L:M);if(i&&options.step){var lastPoint=segment[i-1];segmentPath.push(point.plotX,lastPoint.plotY);}
segmentPath.push(point.plotX,point.plotY);}});if(segment.length>1){graphPath=graphPath.concat(segmentPath);}else{singlePoints.push(segment[0]);}
if(useArea){var areaSegmentPath=[],i,segLength=segmentPath.length;for(i=0;i<segLength;i++){areaSegmentPath.push(segmentPath[i]);}
if(segLength===3){areaSegmentPath.push(L,segmentPath[1],segmentPath[2]);}
if(options.stacking&&series.type!=='areaspline'){for(i=segment.length-1;i>=0;i--){areaSegmentPath.push(segment[i].plotX,segment[i].yBottom);}}else{areaSegmentPath.push(L,segment[segment.length-1].plotX,translatedThreshold,L,segment[0].plotX,translatedThreshold);}
areaPath=areaPath.concat(areaSegmentPath);}});series.graphPath=graphPath;series.singlePoints=singlePoints;if(useArea){fillColor=pick(options.fillColor,Color(series.color).setOpacity(options.fillOpacity||0.75).get());if(area){area.animate({d:areaPath});}else{series.area=series.chart.renderer.path(areaPath).attr({fill:fillColor}).add(group);}}
if(graph){graph.animate({d:graphPath});}else{if(lineWidth){attribs={'stroke':color,'stroke-width':lineWidth};if(dashStyle){attribs.dashstyle=dashStyle;}
series.graph=renderer.path(graphPath).attr(attribs).add(group).shadow(options.shadow);}}},render:function(){var series=this,chart=series.chart,group,setInvert,options=series.options,animation=options.animation,doAnimation=animation&&series.animate,duration=doAnimation?(animation&&animation.duration)||500:0,clipRect=series.clipRect,renderer=chart.renderer;if(!clipRect){clipRect=series.clipRect=!chart.hasRendered&&chart.clipRect?chart.clipRect:renderer.clipRect(0,0,chart.plotSizeX,chart.plotSizeY);if(!chart.clipRect){chart.clipRect=clipRect;}}
if(!series.group){group=series.group=renderer.g('series');if(chart.inverted){setInvert=function(){group.attr({width:chart.plotWidth,height:chart.plotHeight}).invert();};setInvert();addEvent(chart,'resize',setInvert);}
group.clip(series.clipRect).attr({visibility:series.visible?VISIBLE:HIDDEN,zIndex:options.zIndex}).translate(chart.plotLeft,chart.plotTop).add(chart.seriesGroup);}
series.drawDataLabels();if(doAnimation){series.animate(true);}
if(series.drawGraph){series.drawGraph();}
series.drawPoints();if(series.options.enableMouseTracking!==false){series.drawTracker();}
if(doAnimation){series.animate();}
setTimeout(function(){clipRect.isAnimating=false;group=series.group;if(group&&clipRect!==chart.clipRect&&clipRect.renderer){group.clip((series.clipRect=chart.clipRect));clipRect.destroy();}},duration);series.isDirty=false;},redraw:function(){var series=this,chart=series.chart,clipRect=series.clipRect,group=series.group;if(group){if(chart.inverted){group.attr({width:chart.plotWidth,height:chart.plotHeight});}
group.animate({translateX:chart.plotLeft,translateY:chart.plotTop});}
series.translate();series.setTooltipPoints(true);series.render();},setState:function(state){var series=this,options=series.options,graph=series.graph,stateOptions=options.states,lineWidth=options.lineWidth;state=state||NORMAL_STATE;if(series.state!==state){series.state=state;if(stateOptions[state]&&stateOptions[state].enabled===false){return;}
if(state){lineWidth=stateOptions[state].lineWidth||lineWidth+1;}
if(graph&&!graph.dashstyle){graph.attr({'stroke-width':lineWidth},state?0:500);}}},setVisible:function(vis,redraw){var series=this,chart=series.chart,legendItem=series.legendItem,seriesGroup=series.group,seriesTracker=series.tracker,dataLabelsGroup=series.dataLabelsGroup,showOrHide,i,data=series.data,point,ignoreHiddenSeries=chart.options.chart.ignoreHiddenSeries,oldVisibility=series.visible;series.visible=vis=vis===UNDEFINED?!oldVisibility:vis;showOrHide=vis?'show':'hide';if(seriesGroup){seriesGroup[showOrHide]();}
if(seriesTracker){seriesTracker[showOrHide]();}else{i=data.length;while(i--){point=data[i];if(point.tracker){point.tracker[showOrHide]();}}}
if(dataLabelsGroup){dataLabelsGroup[showOrHide]();}
if(legendItem){chart.legend.colorizeItem(series,vis);}
series.isDirty=true;if(series.options.stacking){each(chart.series,function(otherSeries){if(otherSeries.options.stacking&&otherSeries.visible){otherSeries.isDirty=true;}});}
if(ignoreHiddenSeries){chart.isDirtyBox=true;}
if(redraw!==false){chart.redraw();}
fireEvent(series,showOrHide);},show:function(){this.setVisible(true);},hide:function(){this.setVisible(false);},select:function(selected){var series=this;series.selected=selected=(selected===UNDEFINED)?!series.selected:selected;if(series.checkbox){series.checkbox.checked=selected;}
fireEvent(series,selected?'select':'unselect');},drawTracker:function(){var series=this,options=series.options,trackerPath=[].concat(series.graphPath),trackerPathLength=trackerPath.length,chart=series.chart,snap=chart.options.tooltip.snap,tracker=series.tracker,cursor=options.cursor,css=cursor&&{cursor:cursor},singlePoints=series.singlePoints,singlePoint,i;if(trackerPathLength){i=trackerPathLength+1;while(i--){if(trackerPath[i]===M){trackerPath.splice(i+1,0,trackerPath[i+1]-snap,trackerPath[i+2],L);}
if((i&&trackerPath[i]===M)||i===trackerPathLength){trackerPath.splice(i,0,L,trackerPath[i-2]+snap,trackerPath[i-1]);}}}
for(i=0;i<singlePoints.length;i++){singlePoint=singlePoints[i];trackerPath.push(M,singlePoint.plotX-snap,singlePoint.plotY,L,singlePoint.plotX+snap,singlePoint.plotY);}
if(tracker){tracker.attr({d:trackerPath});}else{series.tracker=chart.renderer.path(trackerPath).attr({isTracker:true,stroke:TRACKER_FILL,fill:NONE,'stroke-width':options.lineWidth+2*snap,visibility:series.visible?VISIBLE:HIDDEN,zIndex:1}).on(hasTouch?'touchstart':'mouseover',function(){if(chart.hoverSeries!==series){series.onMouseOver();}}).on('mouseout',function(){if(!options.stickyTracking){series.onMouseOut();}}).css(css).add(chart.trackerGroup);}}};var LineSeries=extendClass(Series);seriesTypes.line=LineSeries;var AreaSeries=extendClass(Series,{type:'area'});seriesTypes.area=AreaSeries;var SplineSeries=extendClass(Series,{type:'spline',getPointSpline:function(segment,point,i){var smoothing=1.5,denom=smoothing+1,plotX=point.plotX,plotY=point.plotY,lastPoint=segment[i-1],nextPoint=segment[i+1],leftContX,leftContY,rightContX,rightContY,ret;if(i&&i<segment.length-1){var lastX=lastPoint.plotX,lastY=lastPoint.plotY,nextX=nextPoint.plotX,nextY=nextPoint.plotY,correction;leftContX=(smoothing*plotX+lastX)/denom;leftContY=(smoothing*plotY+lastY)/denom;rightContX=(smoothing*plotX+nextX)/denom;rightContY=(smoothing*plotY+nextY)/denom;correction=((rightContY-leftContY)*(rightContX-plotX))/(rightContX-leftContX)+plotY-rightContY;leftContY+=correction;rightContY+=correction;if(leftContY>lastY&&leftContY>plotY){leftContY=mathMax(lastY,plotY);rightContY=2*plotY-leftContY;}else if(leftContY<lastY&&leftContY<plotY){leftContY=mathMin(lastY,plotY);rightContY=2*plotY-leftContY;}
if(rightContY>nextY&&rightContY>plotY){rightContY=mathMax(nextY,plotY);leftContY=2*plotY-rightContY;}else if(rightContY<nextY&&rightContY<plotY){rightContY=mathMin(nextY,plotY);leftContY=2*plotY-rightContY;}
point.rightContX=rightContX;point.rightContY=rightContY;}
if(!i){ret=[M,plotX,plotY];}
else{ret=['C',lastPoint.rightContX||lastPoint.plotX,lastPoint.rightContY||lastPoint.plotY,leftContX||plotX,leftContY||plotY,plotX,plotY];lastPoint.rightContX=lastPoint.rightContY=null;}
return ret;}});seriesTypes.spline=SplineSeries;var AreaSplineSeries=extendClass(SplineSeries,{type:'areaspline'});seriesTypes.areaspline=AreaSplineSeries;var ColumnSeries=extendClass(Series,{type:'column',pointAttrToOptions:{stroke:'borderColor','stroke-width':'borderWidth',fill:'color',r:'borderRadius'},init:function(){Series.prototype.init.apply(this,arguments);var series=this,chart=series.chart;chart.hasColumn=true;if(chart.hasRendered){each(chart.series,function(otherSeries){if(otherSeries.type===series.type){otherSeries.isDirty=true;}});}},translate:function(){var series=this,chart=series.chart,options=series.options,stacking=options.stacking,borderWidth=options.borderWidth,columnCount=0,reversedXAxis=series.xAxis.reversed,categories=series.xAxis.categories,stackGroups={},stackKey,columnIndex;Series.prototype.translate.apply(series);each(chart.series,function(otherSeries){if(otherSeries.type===series.type&&otherSeries.visible){if(otherSeries.options.stacking){stackKey=otherSeries.stackKey;if(stackGroups[stackKey]===UNDEFINED){stackGroups[stackKey]=columnCount++;}
columnIndex=stackGroups[stackKey];}else{columnIndex=columnCount++;}
otherSeries.columnIndex=columnIndex;}});var data=series.data,closestPoints=series.closestPoints,categoryWidth=mathAbs(data[1]?data[closestPoints].plotX-data[closestPoints-1].plotX:chart.plotSizeX/((categories&&categories.length)||1)),groupPadding=categoryWidth*options.groupPadding,groupWidth=categoryWidth-2*groupPadding,pointOffsetWidth=groupWidth/columnCount,optionPointWidth=options.pointWidth,pointPadding=defined(optionPointWidth)?(pointOffsetWidth-optionPointWidth)/2:pointOffsetWidth*options.pointPadding,pointWidth=mathMax(pick(optionPointWidth,pointOffsetWidth-2*pointPadding),1),colIndex=(reversedXAxis?columnCount-
series.columnIndex:series.columnIndex)||0,pointXOffset=pointPadding+(groupPadding+colIndex*pointOffsetWidth-(categoryWidth/2))*(reversedXAxis?-1:1),threshold=options.threshold||0,translatedThreshold=series.yAxis.getThreshold(threshold),minPointLength=pick(options.minPointLength,5);each(data,function(point){var plotY=point.plotY,yBottom=point.yBottom||translatedThreshold,barX=point.plotX+pointXOffset,barY=mathCeil(mathMin(plotY,yBottom)),barH=mathCeil(mathMax(plotY,yBottom)-barY),stack=series.yAxis.stacks[(point.y<0?'-':'')+series.stackKey],trackerY,shapeArgs;if(stacking&&series.visible&&stack&&stack[point.x]){stack[point.x].setOffset(pointXOffset,pointWidth);}
if(mathAbs(barH)<minPointLength){if(minPointLength){barH=minPointLength;barY=mathAbs(barY-translatedThreshold)>minPointLength?yBottom-minPointLength:translatedThreshold-(plotY<=translatedThreshold?minPointLength:0);}
trackerY=barY-3;}
extend(point,{barX:barX,barY:barY,barW:pointWidth,barH:barH});point.shapeType='rect';shapeArgs=extend(chart.renderer.Element.prototype.crisp.apply({},[borderWidth,barX,barY,pointWidth,barH]),{r:options.borderRadius});if(borderWidth%2){shapeArgs.y-=1;shapeArgs.height+=1;}
point.shapeArgs=shapeArgs;point.trackerArgs=defined(trackerY)&&merge(point.shapeArgs,{height:mathMax(6,barH+3),y:trackerY});});},getSymbol:function(){},drawGraph:function(){},drawPoints:function(){var series=this,options=series.options,renderer=series.chart.renderer,graphic,shapeArgs;each(series.data,function(point){var plotY=point.plotY;if(plotY!==UNDEFINED&&!isNaN(plotY)&&point.y!==null){graphic=point.graphic;shapeArgs=point.shapeArgs;if(graphic){stop(graphic);graphic.animate(shapeArgs);}else{point.graphic=renderer[point.shapeType](shapeArgs).attr(point.pointAttr[point.selected?SELECT_STATE:NORMAL_STATE]).add(series.group).shadow(options.shadow);}}});},drawTracker:function(){var series=this,chart=series.chart,renderer=chart.renderer,shapeArgs,tracker,trackerLabel=+new Date(),cursor=series.options.cursor,css=cursor&&{cursor:cursor},rel;each(series.data,function(point){tracker=point.tracker;shapeArgs=point.trackerArgs||point.shapeArgs;delete shapeArgs.strokeWidth;if(point.y!==null){if(tracker){tracker.attr(shapeArgs);}else{point.tracker=renderer[point.shapeType](shapeArgs).attr({isTracker:trackerLabel,fill:TRACKER_FILL,visibility:series.visible?VISIBLE:HIDDEN,zIndex:1}).on(hasTouch?'touchstart':'mouseover',function(event){rel=event.relatedTarget||event.fromElement;if(chart.hoverSeries!==series&&attr(rel,'isTracker')!==trackerLabel){series.onMouseOver();}
point.onMouseOver();}).on('mouseout',function(event){if(!series.options.stickyTracking){rel=event.relatedTarget||event.toElement;if(attr(rel,'isTracker')!==trackerLabel){series.onMouseOut();}}}).css(css).add(point.group||chart.trackerGroup);}}});},animate:function(init){var series=this,data=series.data;if(!init){each(data,function(point){var graphic=point.graphic,shapeArgs=point.shapeArgs;if(graphic){graphic.attr({height:0,y:series.yAxis.translate(0,0,1)});graphic.animate({height:shapeArgs.height,y:shapeArgs.y},series.options.animation);}});series.animate=null;}},remove:function(){var series=this,chart=series.chart;if(chart.hasRendered){each(chart.series,function(otherSeries){if(otherSeries.type===series.type){otherSeries.isDirty=true;}});}
Series.prototype.remove.apply(series,arguments);}});seriesTypes.column=ColumnSeries;var BarSeries=extendClass(ColumnSeries,{type:'bar',init:function(chart){chart.inverted=this.inverted=true;ColumnSeries.prototype.init.apply(this,arguments);}});seriesTypes.bar=BarSeries;var ScatterSeries=extendClass(Series,{type:'scatter',translate:function(){var series=this;Series.prototype.translate.apply(series);each(series.data,function(point){point.shapeType='circle';point.shapeArgs={x:point.plotX,y:point.plotY,r:series.chart.options.tooltip.snap};});},drawTracker:function(){var series=this,cursor=series.options.cursor,css=cursor&&{cursor:cursor},graphic;each(series.data,function(point){graphic=point.graphic;if(graphic){graphic.attr({isTracker:true}).on('mouseover',function(event){series.onMouseOver();point.onMouseOver();}).on('mouseout',function(event){if(!series.options.stickyTracking){series.onMouseOut();}}).css(css);}});},cleanData:function(){}});seriesTypes.scatter=ScatterSeries;var PiePoint=extendClass(Point,{init:function(){Point.prototype.init.apply(this,arguments);var point=this,toggleSlice;extend(point,{visible:point.visible!==false,name:pick(point.name,'Slice')});toggleSlice=function(){point.slice();};addEvent(point,'select',toggleSlice);addEvent(point,'unselect',toggleSlice);return point;},setVisible:function(vis){var point=this,chart=point.series.chart,tracker=point.tracker,dataLabel=point.dataLabel,connector=point.connector,method;point.visible=vis=vis===UNDEFINED?!point.visible:vis;method=vis?'show':'hide';point.group[method]();if(tracker){tracker[method]();}
if(dataLabel){dataLabel[method]();}
if(connector){connector[method]();}
if(point.legendItem){chart.legend.colorizeItem(point,vis);}},slice:function(sliced,redraw,animation){var point=this,series=point.series,chart=series.chart,slicedTranslation=point.slicedTranslation,translation;setAnimation(animation,chart);redraw=pick(redraw,true);sliced=point.sliced=defined(sliced)?sliced:!point.sliced;translation={translateX:(sliced?slicedTranslation[0]:chart.plotLeft),translateY:(sliced?slicedTranslation[1]:chart.plotTop)};point.group.animate(translation);if(point.shadowGroup){point.shadowGroup.animate(translation);}}});var PieSeries=extendClass(Series,{type:'pie',isCartesian:false,pointClass:PiePoint,pointAttrToOptions:{stroke:'borderColor','stroke-width':'borderWidth',fill:'color'},getColor:function(){this.initialColor=colorCounter;},animate:function(init){var series=this,data=series.data;each(data,function(point){var graphic=point.graphic,args=point.shapeArgs,up=-mathPI/2;if(graphic){graphic.attr({r:0,start:up,end:up});graphic.animate({r:args.r,start:args.start,end:args.end},series.options.animation);}});series.animate=null;},translate:function(){var total=0,series=this,cumulative=-0.25,precision=1000,options=series.options,slicedOffset=options.slicedOffset,connectorOffset=slicedOffset+options.borderWidth,positions=options.center.concat([options.size,options.innerSize||0]),chart=series.chart,plotWidth=chart.plotWidth,plotHeight=chart.plotHeight,start,end,angle,data=series.data,circ=2*mathPI,fraction,smallestSize=mathMin(plotWidth,plotHeight),isPercent,radiusX,radiusY,labelDistance=options.dataLabels.distance;positions=map(positions,function(length,i){isPercent=/%$/.test(length);return isPercent?[plotWidth,plotHeight,smallestSize,smallestSize][i]*pInt(length)/100:length;});series.getX=function(y,left){angle=math.asin((y-positions[1])/(positions[2]/2+labelDistance));return positions[0]+
(left?-1:1)*(mathCos(angle)*(positions[2]/2+labelDistance));};series.center=positions;each(data,function(point){total+=point.y;});each(data,function(point){fraction=total?point.y/total:0;start=mathRound(cumulative*circ*precision)/precision;cumulative+=fraction;end=mathRound(cumulative*circ*precision)/precision;point.shapeType='arc';point.shapeArgs={x:positions[0],y:positions[1],r:positions[2]/2,innerR:positions[3]/2,start:start,end:end};angle=(end+start)/2;point.slicedTranslation=map([mathCos(angle)*slicedOffset+chart.plotLeft,mathSin(angle)*slicedOffset+chart.plotTop],mathRound);radiusX=mathCos(angle)*positions[2]/2;radiusY=mathSin(angle)*positions[2]/2;point.tooltipPos=[positions[0]+radiusX*0.7,positions[1]+radiusY*0.7];point.labelPos=[positions[0]+radiusX+mathCos(angle)*labelDistance,positions[1]+radiusY+mathSin(angle)*labelDistance,positions[0]+radiusX+mathCos(angle)*connectorOffset,positions[1]+radiusY+mathSin(angle)*connectorOffset,positions[0]+radiusX,positions[1]+radiusY,labelDistance<0?'center':angle<circ/4?'left':'right',angle];point.percentage=fraction*100;point.total=total;});this.setTooltipPoints();},render:function(){var series=this;this.drawPoints();if(series.options.enableMouseTracking!==false){series.drawTracker();}
this.drawDataLabels();if(series.options.animation&&series.animate){series.animate();}
series.isDirty=false;},drawPoints:function(){var series=this,chart=series.chart,renderer=chart.renderer,groupTranslation,graphic,group,shadow=series.options.shadow,shadowGroup,shapeArgs;each(series.data,function(point){graphic=point.graphic;shapeArgs=point.shapeArgs;group=point.group;shadowGroup=point.shadowGroup;if(shadow&&!shadowGroup){shadowGroup=point.shadowGroup=renderer.g('shadow').attr({zIndex:4}).add();}
if(!group){group=point.group=renderer.g('point').attr({zIndex:5}).add();}
groupTranslation=point.sliced?point.slicedTranslation:[chart.plotLeft,chart.plotTop];group.translate(groupTranslation[0],groupTranslation[1]);if(shadowGroup){shadowGroup.translate(groupTranslation[0],groupTranslation[1]);}
if(graphic){graphic.animate(shapeArgs);}else{point.graphic=renderer.arc(shapeArgs).attr(extend(point.pointAttr[NORMAL_STATE],{'stroke-linejoin':'round'})).add(point.group).shadow(shadow,shadowGroup);}
if(point.visible===false){point.setVisible(false);}});},drawDataLabels:function(){var series=this,data=series.data,point,chart=series.chart,options=series.options.dataLabels,connectorPadding=pick(options.connectorPadding,10),connectorWidth=pick(options.connectorWidth,1),connector,connectorPath,outside=options.distance>0,dataLabel,labelPos,labelHeight,lastY,centerY=series.center[1],quarters=[[],[],[],[]],x,y,visibility,overlapping,rankArr,secondPass,sign,lowerHalf,sort,i=4,j;Series.prototype.drawDataLabels.apply(series);each(data,function(point){var angle=point.labelPos[7],quarter;if(angle<0){quarter=0;}else if(angle<mathPI/2){quarter=1;}else if(angle<mathPI){quarter=2;}else{quarter=3;}
quarters[quarter].push(point);});quarters[1].reverse();quarters[3].reverse();sort=function(a,b){return a.y>b.y;};while(i--){overlapping=0;rankArr=[].concat(quarters[i]);rankArr.sort(sort);j=rankArr.length;while(j--){rankArr[j].rank=j;}
for(secondPass=0;secondPass<2;secondPass++){lowerHalf=i%3;lastY=lowerHalf?9999:-9999;sign=lowerHalf?-1:1;for(j=0;j<quarters[i].length;j++){point=quarters[i][j];dataLabel=point.dataLabel;if(dataLabel){labelPos=point.labelPos;visibility=VISIBLE;x=labelPos[0];y=labelPos[1];if(!labelHeight){labelHeight=dataLabel&&dataLabel.getBBox().height;}
if(outside){if(secondPass&&point.rank<overlapping){visibility=HIDDEN;}else if((!lowerHalf&&y<lastY+labelHeight)||(lowerHalf&&y>lastY-labelHeight)){y=lastY+sign*labelHeight;x=series.getX(y,i>1);if((!lowerHalf&&y+labelHeight>centerY)||(lowerHalf&&y-labelHeight<centerY)){if(secondPass){visibility=HIDDEN;}else{overlapping++;}}}}
if(point.visible===false){visibility=HIDDEN;}
if(visibility===VISIBLE){lastY=y;}
if(secondPass){dataLabel.attr({visibility:visibility,align:labelPos[6]})[dataLabel.moved?'animate':'attr']({x:x+options.x+
({left:connectorPadding,right:-connectorPadding}[labelPos[6]]||0),y:y+options.y});dataLabel.moved=true;if(outside&&connectorWidth){connector=point.connector;connectorPath=[M,x+(labelPos[6]==='left'?5:-5),y,L,x,y,L,labelPos[2],labelPos[3],L,labelPos[4],labelPos[5]];if(connector){connector.animate({d:connectorPath});connector.attr('visibility',visibility);}else{point.connector=connector=series.chart.renderer.path(connectorPath).attr({'stroke-width':connectorWidth,stroke:options.connectorColor||'#606060',visibility:visibility,zIndex:3}).translate(chart.plotLeft,chart.plotTop).add();}}}}}}}},drawTracker:ColumnSeries.prototype.drawTracker,getSymbol:function(){}});seriesTypes.pie=PieSeries;win.Highcharts={Chart:Chart,dateFormat:dateFormat,pathAnim:pathAnim,getOptions:getOptions,numberFormat:numberFormat,Point:Point,Color:Color,Renderer:Renderer,seriesTypes:seriesTypes,setOptions:setOptions,Series:Series,addEvent:addEvent,createElement:createElement,discardElement:discardElement,css:css,each:each,extend:extend,map:map,merge:merge,pick:pick,extendClass:extendClass,version:'2.1.5'};}());

/* jquery.sparkline 1.5.1 - http://omnipotent.net/jquery.sparkline/ */

(function($){$.fn.simpledraw=function(width,height,use_existing){if(use_existing&&this[0].vcanvas)return this[0].vcanvas;if(width==undefined)width=$(this).innerWidth();if(height==undefined)height=$(this).innerHeight();if($.browser.hasCanvas){return new vcanvas_canvas(width,height,this);}else if($.browser.msie){return new vcanvas_vml(width,height,this);}else{return false;}};var pending=[];$.fn.sparkline=function(uservalues,options){var options=$.extend({type:'line',lineColor:'#00f',fillColor:'#cdf',defaultPixelsPerValue:3,width:'auto',height:'auto',composite:false},options?options:{});return this.each(function(){var render=function(){var values=(uservalues=='html'||uservalues==undefined)?$(this).text().split(','):uservalues;var width=options.width=='auto'?values.length*options.defaultPixelsPerValue:options.width;if(options.height=='auto'){if(!options.composite||!this.vcanvas){var tmp=document.createElement('span');tmp.innerHTML='a';$(this).html(tmp);height=$(tmp).innerHeight();$(tmp).remove();}}else{height=options.height;}
$.fn.sparkline[options.type].call(this,values,options,width,height);}
if(($(this).html()&&$(this).is(':hidden'))||($.fn.jquery<"1.3.0"&&$(this).parents().is(':hidden'))){pending.push([this,render]);}else{render.call(this);}});};$.sparkline_display_visible=function(){for(var i=pending.length-1;i>=0;i--){var el=pending[i][0];if($(el).is(':visible')&&!$(el).parents().is(':hidden')){pending[i][1].call(el);pending.splice(i,1);}}};$.fn.sparkline.line=function(values,options,width,height){var options=$.extend({spotColor:'#f80',spotRadius:1.5,minSpotColor:'#f80',maxSpotColor:'#f80',lineWidth:1,normalRangeMin:undefined,normalRangeMax:undefined,normalRangeColor:'#ccc',chartRangeMin:undefined,chartRangeMax:undefined,chartRangeMinX:undefined,chartRangeMaxX:undefined},options?options:{});var xvalues=[],yvalues=[],yminmax=[];for(i=0;i<values.length;i++){var v=values[i];var isstr=typeof(values[i])=='string';var isarray=typeof(values[i])=='object'&&values[i]instanceof Array;var sp=isstr&&values[i].split(':');if(isstr&&sp.length==2){xvalues.push(Number(sp[0]));yvalues.push(Number(sp[1]));yminmax.push(Number(sp[1]));}else if(isarray){xvalues.push(values[i][0]);yvalues.push(values[i][1]);yminmax.push(values[i][1]);}else{xvalues.push(i);if(values[i]===null||values[i]=='null'){yvalues.push(null);}else{yvalues.push(Number(values[i]));yminmax.push(Number(values[i]));}}}
if(options.xvalues){xvalues=options.xvalues;}
var maxy=Math.max.apply(Math,yminmax);var maxyval=maxy;var miny=Math.min.apply(Math,yminmax);var minyval=miny;var maxx=Math.max.apply(Math,xvalues);var maxxval=maxx;var minx=Math.min.apply(Math,xvalues);var minxval=minx;if(options.normalRangeMin!=undefined){if(options.normalRangeMin<miny)
miny=options.normalRangeMin;if(options.normalRangeMax>maxy)
maxy=options.normalRangeMax;}
if(options.chartRangeMin!=undefined&&(options.chartRangeClip||options.chartRangeMin<miny)){miny=options.chartRangeMin;}
if(options.chartRangeMax!=undefined&&(options.chartRangeClip||options.chartRangeMax>maxy)){maxy=options.chartRangeMax;}
if(options.chartRangeMinX!=undefined&&(options.chartRangeClipX||options.chartRangeMinX<minx)){minx=options.chartRangeMinX;}
if(options.chartRangeMaxX!=undefined&&(options.chartRangeClipX||options.chartRangeMaxX>maxx)){maxx=options.chartRangeMaxX;}
var rangex=maxx-minx==0?1:maxx-minx;var rangey=maxy-miny==0?1:maxy-miny;var vl=yvalues.length-1;if(vl<1){this.innerHTML='';return;}
var target=$(this).simpledraw(width,height,options.composite);if(target){var canvas_width=target.pixel_width;var canvas_height=target.pixel_height;var canvas_top=0;var canvas_left=0;if(options.spotRadius&&(canvas_width<(options.spotRadius*4)||canvas_height<(options.spotRadius*4))){options.spotRadius=0;}
if(options.spotRadius){if(options.minSpotColor||(options.spotColor&&yvalues[vl]==miny))
canvas_height-=Math.ceil(options.spotRadius);if(options.maxSpotColor||(options.spotColor&&yvalues[vl]==maxy)){canvas_height-=Math.ceil(options.spotRadius);canvas_top+=Math.ceil(options.spotRadius);}
if(options.minSpotColor||options.maxSpotColor&&(yvalues[0]==miny||yvalues[0]==maxy)){canvas_left+=Math.ceil(options.spotRadius);canvas_width-=Math.ceil(options.spotRadius);}
if(options.spotColor||(options.minSpotColor||options.maxSpotColor&&(yvalues[vl]==miny||yvalues[vl]==maxy)))
canvas_width-=Math.ceil(options.spotRadius);}
canvas_height--;if(options.normalRangeMin!=undefined){var ytop=canvas_top+Math.round(canvas_height-(canvas_height*((options.normalRangeMax-miny)/rangey)));var height=Math.round((canvas_height*(options.normalRangeMax-options.normalRangeMin))/rangey);target.drawRect(canvas_left,ytop,canvas_width,height,undefined,options.normalRangeColor);}
var path=[];var paths=[path];for(var i=0,vlen=yvalues.length;i<vlen;i++){var x=xvalues[i],y=yvalues[i];if(y===null){if(i){if(yvalues[i-1]!==null){path=[];paths.push(path);}}}else{if(y<miny)y=miny;if(y>maxy)y=maxy;if(!path.length){path.push([canvas_left+Math.round((x-minx)*(canvas_width/rangex)),canvas_top+canvas_height]);}
path.push([canvas_left+Math.round((x-minx)*(canvas_width/rangex)),canvas_top+Math.round(canvas_height-(canvas_height*((y-miny)/rangey)))]);}}
for(var i=0,plen=paths.length;i<plen;i++){path=paths[i];if(!path.length)
continue;if(options.fillColor){path.push([path[path.length-1][0],canvas_top+canvas_height-1]);target.drawShape(path,undefined,options.fillColor);path.pop();}
if(path.length>2){path[0]=[path[0][0],path[1][1]];}
target.drawShape(path,options.lineColor,undefined,options.lineWidth);}
if(options.spotRadius&&options.spotColor){target.drawCircle(canvas_left+Math.round(xvalues[xvalues.length-1]*(canvas_width/rangex)),canvas_top+Math.round(canvas_height-(canvas_height*((yvalues[vl]-miny)/rangey))),options.spotRadius,undefined,options.spotColor);}
if(maxy!=minyval){if(options.spotRadius&&options.minSpotColor){var x=xvalues[yvalues.indexOf(minyval)];target.drawCircle(canvas_left+Math.round((x-minx)*(canvas_width/rangex)),canvas_top+Math.round(canvas_height-(canvas_height*((minyval-miny)/rangey))),options.spotRadius,undefined,options.minSpotColor);}
if(options.spotRadius&&options.maxSpotColor){var x=xvalues[yvalues.indexOf(maxyval)];target.drawCircle(canvas_left+Math.round((x-minx)*(canvas_width/rangex)),canvas_top+Math.round(canvas_height-(canvas_height*((maxyval-miny)/rangey))),options.spotRadius,undefined,options.maxSpotColor);}}}else{this.innerHTML='';}};$.fn.sparkline.bar=function(values,options,width,height){var options=$.extend({type:'bar',barColor:'#00f',negBarColor:'#f44',zeroColor:undefined,nullColor:undefined,zeroAxis:undefined,barWidth:4,barSpacing:1,chartRangeMax:undefined,chartRangeMin:undefined,chartRangeClip:false,colorMap:undefined},options?options:{});var width=(values.length*options.barWidth)+((values.length-1)*options.barSpacing);var num_values=[];for(var i=0,vlen=values.length;i<vlen;i++){if(values[i]=='null'||values[i]===null){values[i]=null;}else{values[i]=Number(values[i]);num_values.push(Number(values[i]));}}
var max=Math.max.apply(Math,num_values);var min=Math.min.apply(Math,num_values);if(options.chartRangeMin!=undefined&&(options.chartRangeClip||options.chartRangeMin<min)){min=options.chartRangeMin;}
if(options.chartRangeMax!=undefined&&(options.chartRangeClip||options.chartRangeMax>max)){max=options.chartRangeMax;}
if(options.zeroAxis==undefined)options.zeroAxis=min<0;var range=max-min==0?1:max-min;if($.isArray(options.colorMap)){var colorMapByIndex=options.colorMap;var colorMapByValue=null;}else{var colorMapByIndex=null;var colorMapByValue=options.colorMap;}
var target=$(this).simpledraw(width,height,options.composite);if(target){var canvas_width=target.pixel_width;var canvas_height=target.pixel_height;var yzero=min<0&&options.zeroAxis?canvas_height-Math.round(canvas_height*(Math.abs(min)/range))-1:canvas_height-1;for(var i=0,vlen=values.length;i<vlen;i++){var x=i*(options.barWidth+options.barSpacing);var val=values[i];if(val===null){if(options.nullColor){color=options.nullColor;val=(options.zeroAxis&&min<0)?0:min;var height=1;var y=(options.zeroAxis&&min<0)?yzero:canvas_height-height;}else{continue;}}else{if(val<min)val=min;if(val>max)val=max;var color=(val<0)?options.negBarColor:options.barColor;if(options.zeroAxis&&min<0){var height=Math.round(canvas_height*((Math.abs(val)/range)))+1;var y=(val<0)?yzero:yzero-height;}else{var height=Math.round(canvas_height*((val-min)/range))+1;var y=canvas_height-height;}
if(val==0&&options.zeroColor!=undefined){color=options.zeroColor;}
if(colorMapByValue&&colorMapByValue[val]){color=colorMapByValue[val];}else if(colorMapByIndex&&colorMapByIndex.length>i){color=colorMapByIndex[i];}
if(color===null){continue;}}
target.drawRect(x,y,options.barWidth-1,height-1,color,color);}}else{this.innerHTML='';}};$.fn.sparkline.tristate=function(values,options,width,height){values=$.map(values,Number);var options=$.extend({barWidth:4,barSpacing:1,posBarColor:'#6f6',negBarColor:'#f44',zeroBarColor:'#999',colorMap:{}},options);var width=(values.length*options.barWidth)+((values.length-1)*options.barSpacing);if($.isArray(options.colorMap)){var colorMapByIndex=options.colorMap;var colorMapByValue=null;}else{var colorMapByIndex=null;var colorMapByValue=options.colorMap;}
var target=$(this).simpledraw(width,height,options.composite);if(target){var canvas_width=target.pixel_width;var canvas_height=target.pixel_height;var half_height=Math.round(canvas_height/2);for(var i=0,vlen=values.length;i<vlen;i++){var x=i*(options.barWidth+options.barSpacing);if(values[i]<0){var y=half_height;var height=half_height-1;var color=options.negBarColor;}else if(values[i]>0){var y=0;var height=half_height-1;var color=options.posBarColor;}else{var y=half_height-1;var height=2;var color=options.zeroBarColor;}
if(colorMapByValue&&colorMapByValue[values[i]]){color=colorMapByValue[values[i]];}else if(colorMapByIndex&&colorMapByIndex.length>i){color=colorMapByIndex[i];}
if(color===null){continue;}
target.drawRect(x,y,options.barWidth-1,height-1,color,color);}}else{this.innerHTML='';}};$.fn.sparkline.discrete=function(values,options,width,height){values=$.map(values,Number);var options=$.extend({lineHeight:'auto',thresholdColor:undefined,thresholdValue:0,chartRangeMax:undefined,chartRangeMin:undefined,chartRangeClip:false},options);width=options.width=='auto'?values.length*2:width;var interval=Math.floor(width/values.length);var target=$(this).simpledraw(width,height,options.composite);if(target){var canvas_width=target.pixel_width;var canvas_height=target.pixel_height;var line_height=options.lineHeight=='auto'?Math.round(canvas_height*0.3):options.lineHeight;var pheight=canvas_height-line_height;var min=Math.min.apply(Math,values);var max=Math.max.apply(Math,values);if(options.chartRangeMin!=undefined&&(options.chartRangeClip||options.chartRangeMin<min)){min=options.chartRangeMin;}
if(options.chartRangeMax!=undefined&&(options.chartRangeClip||options.chartRangeMax>max)){max=options.chartRangeMax;}
var range=max-min;for(var i=0,vlen=values.length;i<vlen;i++){var val=values[i];if(val<min)val=min;if(val>max)val=max;var x=(i*interval);var ytop=Math.round(pheight-pheight*((val-min)/range));target.drawLine(x,ytop,x,ytop+line_height,(options.thresholdColor&&val<options.thresholdValue)?options.thresholdColor:options.lineColor);}}else{this.innerHTML='';}};$.fn.sparkline.bullet=function(values,options,width,height){values=$.map(values,Number);var options=$.extend({targetColor:'red',targetWidth:3,performanceColor:'blue',rangeColors:['#D3DAFE','#A8B6FF','#7F94FF'],base:undefined},options);width=options.width=='auto'?'4.0em':width;var target=$(this).simpledraw(width,height,options.composite);if(target&&values.length>1){var canvas_width=target.pixel_width-Math.ceil(options.targetWidth/2);var canvas_height=target.pixel_height;var min=Math.min.apply(Math,values);var max=Math.max.apply(Math,values);if(options.base==undefined){var min=min<0?min:0;}else{min=options.base;}
var range=max-min;for(i=2,vlen=values.length;i<vlen;i++){var rangeval=parseInt(values[i]);var rangewidth=Math.round(canvas_width*((rangeval-min)/range));target.drawRect(0,0,rangewidth-1,canvas_height-1,options.rangeColors[i-2],options.rangeColors[i-2]);}
var perfval=parseInt(values[1]);var perfwidth=Math.round(canvas_width*((perfval-min)/range));target.drawRect(0,Math.round(canvas_height*0.3),perfwidth-1,Math.round(canvas_height*0.4)-1,options.performanceColor,options.performanceColor);var targetval=parseInt(values[0]);var x=Math.round(canvas_width*((targetval-min)/range)-(options.targetWidth/2));var targettop=Math.round(canvas_height*0.10);var targetheight=canvas_height-(targettop*2);target.drawRect(x,targettop,options.targetWidth-1,targetheight-1,options.targetColor,options.targetColor);}else{this.innerHTML='';}};$.fn.sparkline.pie=function(values,options,width,height){values=$.map(values,Number);var options=$.extend({sliceColors:['#f00','#0f0','#00f']},options);width=options.width=='auto'?height:width;var target=$(this).simpledraw(width,height,options.composite);if(target&&values.length>1){var canvas_width=target.pixel_width;var canvas_height=target.pixel_height;var radius=Math.floor(Math.min(canvas_width,canvas_height)/2);var total=0;for(var i=0,vlen=values.length;i<vlen;i++)
total+=values[i];var next=0;if(options.offset){next+=(2*Math.PI)*(options.offset/360);}
var circle=2*Math.PI;for(var i=0,vlen=values.length;i<vlen;i++){var start=next;var end=next;if(total>0){end=next+(circle*(values[i]/total));}
target.drawPieSlice(radius,radius,radius,start,end,undefined,options.sliceColors[i%options.sliceColors.length]);next=end;}}};function quartile(values,q){if(q==2){var vl2=Math.floor(values.length/2);return values.length%2?values[vl2]:(values[vl2]+values[vl2+1])/2;}else{var vl4=Math.floor(values.length/4);return values.length%2?(values[vl4*q]+values[vl4*q+1])/2:values[vl4*q];}};$.fn.sparkline.box=function(values,options,width,height){values=$.map(values,Number);var options=$.extend({raw:false,boxLineColor:'black',boxFillColor:'#cdf',whiskerColor:'black',outlierLineColor:'#333',outlierFillColor:'white',medianColor:'red',showOutliers:true,outlierIQR:1.5,spotRadius:1.5,target:undefined,targetColor:'#4a2',chartRangeMax:undefined,chartRangeMin:undefined},options);width=options.width=='auto'?'4.0em':width;minvalue=options.chartRangeMin==undefined?Math.min.apply(Math,values):options.chartRangeMin;maxvalue=options.chartRangeMax==undefined?Math.max.apply(Math,values):options.chartRangeMax;var target=$(this).simpledraw(width,height,options.composite);if(target&&values.length>1){var canvas_width=target.pixel_width;var canvas_height=target.pixel_height;if(options.raw){if(options.showOutliers&&values.length>5){var loutlier=values[0],lwhisker=values[1],q1=values[2],q2=values[3],q3=values[4],rwhisker=values[5],routlier=values[6];}else{var lwhisker=values[0],q1=values[1],q2=values[2],q3=values[3],rwhisker=values[4];}}else{values.sort(function(a,b){return a-b;});var q1=quartile(values,1);var q2=quartile(values,2);var q3=quartile(values,3);var iqr=q3-q1;if(options.showOutliers){var lwhisker=undefined,rwhisker=undefined;for(var i=0,vlen=values.length;i<vlen;i++){if(lwhisker==undefined&&values[i]>q1-(iqr*options.outlierIQR))
lwhisker=values[i];if(values[i]<q3+(iqr*options.outlierIQR))
rwhisker=values[i];}
var loutlier=values[0];var routlier=values[values.length-1];}else{var lwhisker=values[0];var rwhisker=values[values.length-1];}}
var unitsize=canvas_width/(maxvalue-minvalue+1);var canvas_left=0;if(options.showOutliers){canvas_left=Math.ceil(options.spotRadius);canvas_width-=2*Math.ceil(options.spotRadius);var unitsize=canvas_width/(maxvalue-minvalue+1);if(loutlier<lwhisker)
target.drawCircle((loutlier-minvalue)*unitsize+canvas_left,canvas_height/2,options.spotRadius,options.outlierLineColor,options.outlierFillColor);if(routlier>rwhisker)
target.drawCircle((routlier-minvalue)*unitsize+canvas_left,canvas_height/2,options.spotRadius,options.outlierLineColor,options.outlierFillColor);}
target.drawRect(Math.round((q1-minvalue)*unitsize+canvas_left),Math.round(canvas_height*0.1),Math.round((q3-q1)*unitsize),Math.round(canvas_height*0.8),options.boxLineColor,options.boxFillColor);target.drawLine(Math.round((lwhisker-minvalue)*unitsize+canvas_left),Math.round(canvas_height/2),Math.round((q1-minvalue)*unitsize+canvas_left),Math.round(canvas_height/2),options.lineColor);target.drawLine(Math.round((lwhisker-minvalue)*unitsize+canvas_left),Math.round(canvas_height/4),Math.round((lwhisker-minvalue)*unitsize+canvas_left),Math.round(canvas_height-canvas_height/4),options.whiskerColor);target.drawLine(Math.round((rwhisker-minvalue)*unitsize+canvas_left),Math.round(canvas_height/2),Math.round((q3-minvalue)*unitsize+canvas_left),Math.round(canvas_height/2),options.lineColor);target.drawLine(Math.round((rwhisker-minvalue)*unitsize+canvas_left),Math.round(canvas_height/4),Math.round((rwhisker-minvalue)*unitsize+canvas_left),Math.round(canvas_height-canvas_height/4),options.whiskerColor);target.drawLine(Math.round((q2-minvalue)*unitsize+canvas_left),Math.round(canvas_height*0.1),Math.round((q2-minvalue)*unitsize+canvas_left),Math.round(canvas_height*0.9),options.medianColor);if(options.target){var size=Math.ceil(options.spotRadius);target.drawLine(Math.round((options.target-minvalue)*unitsize+canvas_left),Math.round((canvas_height/2)-size),Math.round((options.target-minvalue)*unitsize+canvas_left),Math.round((canvas_height/2)+size),options.targetColor);target.drawLine(Math.round((options.target-minvalue)*unitsize+canvas_left-size),Math.round(canvas_height/2),Math.round((options.target-minvalue)*unitsize+canvas_left+size),Math.round(canvas_height/2),options.targetColor);}}else{this.innerHTML='';}};if(!Array.prototype.indexOf){Array.prototype.indexOf=function(entry){for(var i=0,vlen=this.length;i<vlen;i++){if(this[i]==entry)
return i;}
return-1;}}
if($.browser.msie&&!document.namespaces['v']){document.namespaces.add('v','urn:schemas-microsoft-com:vml','#default#VML');}
if($.browser.hasCanvas==undefined){var t=document.createElement('canvas');$.browser.hasCanvas=t.getContext!=undefined;}
var vcanvas_base=function(width,height,target){};vcanvas_base.prototype={init:function(width,height,target){this.width=width;this.height=height;this.target=target;if(target[0])target=target[0];target.vcanvas=this;},drawShape:function(path,lineColor,fillColor,lineWidth){alert('drawShape not implemented');},drawLine:function(x1,y1,x2,y2,lineColor,lineWidth){return this.drawShape([[x1,y1],[x2,y2]],lineColor,lineWidth);},drawCircle:function(x,y,radius,lineColor,fillColor){alert('drawCircle not implemented');},drawPieSlice:function(x,y,radius,startAngle,endAngle,lineColor,fillColor){alert('drawPieSlice not implemented');},drawRect:function(x,y,width,height,lineColor,fillColor){alert('drawRect not implemented');},getElement:function(){return this.canvas;},_insert:function(el,target){$(target).html(el);}};var vcanvas_canvas=function(width,height,target){return this.init(width,height,target);};vcanvas_canvas.prototype=$.extend(new vcanvas_base,{_super:vcanvas_base.prototype,init:function(width,height,target){this._super.init(width,height,target);this.canvas=document.createElement('canvas');if(target[0])target=target[0];target.vcanvas=this;$(this.canvas).css({display:'inline-block',width:width,height:height,verticalAlign:'top'});this._insert(this.canvas,target);this.pixel_height=$(this.canvas).height();this.pixel_width=$(this.canvas).width();this.canvas.width=this.pixel_width;this.canvas.height=this.pixel_height;$(this.canvas).css({width:this.pixel_width,height:this.pixel_height});},_getContext:function(lineColor,fillColor,lineWidth){var context=this.canvas.getContext('2d');if(lineColor!=undefined)
context.strokeStyle=lineColor;context.lineWidth=lineWidth==undefined?1:lineWidth;if(fillColor!=undefined)
context.fillStyle=fillColor;return context;},drawShape:function(path,lineColor,fillColor,lineWidth){var context=this._getContext(lineColor,fillColor,lineWidth);context.beginPath();context.moveTo(path[0][0]+0.5,path[0][1]+0.5);for(var i=1,plen=path.length;i<plen;i++){context.lineTo(path[i][0]+0.5,path[i][1]+0.5);}
if(lineColor!=undefined){context.stroke();}
if(fillColor!=undefined){context.fill();}},drawCircle:function(x,y,radius,lineColor,fillColor){var context=this._getContext(lineColor,fillColor);context.beginPath();context.arc(x,y,radius,0,2*Math.PI,false);if(lineColor!=undefined){context.stroke();}
if(fillColor!=undefined){context.fill();}},drawPieSlice:function(x,y,radius,startAngle,endAngle,lineColor,fillColor){var context=this._getContext(lineColor,fillColor);context.beginPath();context.moveTo(x,y);context.arc(x,y,radius,startAngle,endAngle,false);context.lineTo(x,y);context.closePath();if(lineColor!=undefined){context.stroke();}
if(fillColor){context.fill();}},drawRect:function(x,y,width,height,lineColor,fillColor){return this.drawShape([[x,y],[x+width,y],[x+width,y+height],[x,y+height],[x,y]],lineColor,fillColor);}});var vcanvas_vml=function(width,height,target){return this.init(width,height,target);};vcanvas_vml.prototype=$.extend(new vcanvas_base,{_super:vcanvas_base.prototype,init:function(width,height,target){this._super.init(width,height,target);if(target[0])target=target[0];target.vcanvas=this;this.canvas=document.createElement('span');$(this.canvas).css({display:'inline-block',position:'relative',overflow:'hidden',width:width,height:height,margin:'0px',padding:'0px',verticalAlign:'top'});this._insert(this.canvas,target);this.pixel_height=$(this.canvas).height();this.pixel_width=$(this.canvas).width();this.canvas.width=this.pixel_width;this.canvas.height=this.pixel_height;;var groupel='<v:group coordorigin="0 0" coordsize="'+this.pixel_width+' '+this.pixel_height+'"'
+' style="position:absolute;top:0;left:0;width:'+this.pixel_width+'px;height='+this.pixel_height+'px;"></v:group>';this.canvas.insertAdjacentHTML('beforeEnd',groupel);this.group=$(this.canvas).children()[0];},drawShape:function(path,lineColor,fillColor,lineWidth){var vpath=[];for(var i=0,plen=path.length;i<plen;i++){vpath[i]=''+(path[i][0])+','+(path[i][1]);}
var initial=vpath.splice(0,1);lineWidth=lineWidth==undefined?1:lineWidth;var stroke=lineColor==undefined?' stroked="false" ':' strokeWeight="'+lineWidth+'" strokeColor="'+lineColor+'" ';var fill=fillColor==undefined?' filled="false"':' fillColor="'+fillColor+'" filled="true" ';var closed=vpath[0]==vpath[vpath.length-1]?'x ':'';var vel='<v:shape coordorigin="0 0" coordsize="'+this.pixel_width+' '+this.pixel_height+'" '
+stroke
+fill
+' style="position:absolute;left:0px;top:0px;height:'+this.pixel_height+'px;width:'+this.pixel_width+'px;padding:0px;margin:0px;" '
+' path="m '+initial+' l '+vpath.join(', ')+' '+closed+'e">'
+' </v:shape>';this.group.insertAdjacentHTML('beforeEnd',vel);},drawCircle:function(x,y,radius,lineColor,fillColor){x-=radius+1;y-=radius+1;var stroke=lineColor==undefined?' stroked="false" ':' strokeWeight="1" strokeColor="'+lineColor+'" ';var fill=fillColor==undefined?' filled="false"':' fillColor="'+fillColor+'" filled="true" ';var vel='<v:oval '
+stroke
+fill
+' style="position:absolute;top:'+y+'px; left:'+x+'px; width:'+(radius*2)+'px; height:'+(radius*2)+'px"></v:oval>';this.group.insertAdjacentHTML('beforeEnd',vel);},drawPieSlice:function(x,y,radius,startAngle,endAngle,lineColor,fillColor){if(startAngle==endAngle){return;}
if((endAngle-startAngle)==(2*Math.PI)){startAngle=0.0;endAngle=(2*Math.PI);}
var startx=x+Math.round(Math.cos(startAngle)*radius);var starty=y+Math.round(Math.sin(startAngle)*radius);var endx=x+Math.round(Math.cos(endAngle)*radius);var endy=y+Math.round(Math.sin(endAngle)*radius);if(startx==endx&&starty==endy&&(endAngle-startAngle)<Math.PI)
return;var vpath=[x-radius,y-radius,x+radius,y+radius,startx,starty,endx,endy];var stroke=lineColor==undefined?' stroked="false" ':' strokeWeight="1" strokeColor="'+lineColor+'" ';var fill=fillColor==undefined?' filled="false"':' fillColor="'+fillColor+'" filled="true" ';var vel='<v:shape coordorigin="0 0" coordsize="'+this.pixel_width+' '+this.pixel_height+'" '
+stroke
+fill
+' style="position:absolute;left:0px;top:0px;height:'+this.pixel_height+'px;width:'+this.pixel_width+'px;padding:0px;margin:0px;" '
+' path="m '+x+','+y+' wa '+vpath.join(', ')+' x e">'
+' </v:shape>';this.group.insertAdjacentHTML('beforeEnd',vel);},drawRect:function(x,y,width,height,lineColor,fillColor){return this.drawShape([[x,y],[x,y+height],[x+width,y+height],[x+width,y],[x,y]],lineColor,fillColor);}});})(jQuery);
    
    </script>

		<%= yield(:header) %>

		<style type="text/css">
			<%- @severities.each do |sev| -%>
				ul.table li div.small span.severity.sev<%= sev.sig_id %>{
					background-color: <%= sev.bg_color %>;
					color: <%= sev.text_color %>;
				}
			<%- end -%>
		</style>
		
	</head>
	
	<body>
		
		<div id="wrapper">

			<div id='header'>

				<% if Setting.company? %>
					<h1><%= Setting.find(:company) %></h1>
				<% else %>
					<h1>Snorby Reports</h1>
				<% end %>

				Date: <%= Time.zone.now.strftime('%A %B, %Y at %I:%M %p %Z') %>

				<%= yield(:pdf_header) %>

			</div>

			<div id="content" class='shadow container_12'>

		    <%= yield %>

			</div>

		</div>
		
		<%= yield(:footer) %>
	</body>
	
</html>
